vue3视频播放插件vue3-video-play的具体使用方法

发布于:12分钟前

之前的vue项目中用到视频播放器,但是UI不是很好看,索性就打算写一个视频播放器插件紧随着vue3的发布,vue3的生态还不是很完整,就索性把这个视频播放器插件修改成了vue3版,最终使用vite2+vue3开发

插件Github地址 vue-video-player

先看一下这个播放器(vue3-video-play)的界面吧

video.png

vue3-video-play视频播放插件基于原生的HTML5的 <video> 标签 开发,所以支持的视频格式和 <video> 一致,并且支持<video>标签的所有原生属性和方法

主页

https://xdlumia.github.io

功能一览

  1. 支持快捷键操作
  2. 支持倍速播放设置
  3. 支持镜像画面设置
  4. 支持关灯模式设置
  5. 支持画中画模式播放
  6. 支持全屏播放
  7. 支持网页全屏播放

安装

npm安装:

npm i vue3-video-play --save 
   
    
    

yarn安装:

yarn add vue3-video-play --save 
   
    
    

开始使用

全局使用


   
    
    
  1. import { createApp } from 'vue'
  2. import App from './App.vue'
  3. const app = createApp( App)
  4. import videoPlay from 'vue3-video-play' // 引入组件
  5. import 'vue3-video-play/dist/style.css' // 引入css
  6. ​​​​​​​app. use(videoPlay) app. mount( '#app')

组件内使用


   
    
    
  1. import 'vue3-video-play/dist/style.css'
  2. import { videoPlay } from 'vue-video-player'
  3. export default {
  4. components: {
  5. videoPlay
  6. }
  7. }

SPA 单页面使用示例


   
    
    
  1. <template>
  2. <div>
  3. <videoPlay
  4. v-bind= "options"
  5. @ play= "onPlay"
  6. @ pause= "onPause"
  7. @ timeupdate= "onTimeupdate"
  8. @ canplay= "onCanplay" />
  9. </div>
  10. </template>
  11. <script setup lang="ts">
  12. import { reactive } from 'vue';
  13. import { videoPlay } from '../lib/index.js';
  14. const options = reactive({
  15. width: '800px', //播放器高度
  16. height: '450px', //播放器高度
  17. color: "#409eff", //主题色
  18. muted: false, //静音
  19. webFullScreen: false,
  20. speedRate: [ "0.75", "1.0", "1.25", "1.5", "2.0"], //播放倍速
  21. autoPlay: false, //自动播放
  22. loop: false, //循环播放
  23. mirror: false, //镜像画面
  24. ligthOff: false, //关灯模式
  25. volume: 0.3, //默认音量大小
  26. control: true, //是否显示控制器
  27. title: '', //视频名称
  28. src: "http://vjs.zencdn.net/v/oceans.mp4", //视频源
  29. poster: '', //封面
  30. })
  31. const onPlay = ( ev) => {
  32. console. log( '播放')
  33. }
  34. const onPause = ( ev) => {
  35. console. log(ev, '暂停')
  36. }
  37. const onTimeupdate = ( ev) => {
  38. console. log(ev, '时间更新')
  39. }
  40. const onCanplay = ( ev) => {
  41. console. log(ev, '可以播放')
  42. }
  43. </script>
  44. <style scoped>
  45. </style>

Props

vue3-video-play支持video原生所有属性 video默认属性 使用方式和props属性使用一致

名称 说明 类型 可选值 默认值
width 播放器宽度 string - 800px
height 播放器高度 string - 450px
title 视频名称 string - -
src 视频资源 string - -
color 播放器主色调 string - #409eff
webFullScreen 网页全屏 boolean - false
speedRate 倍速配置 array - [“0.75”, “1.0”, “1.25”, “1.5”, “2.0”]
mirror 镜像画面 boolean - false
ligthOff 关灯模式 boolean - false
muted 静音 boolean - false
autoPlay 自动播放 boolean - false,为true时会自动静音
loop 循环播放 boolean - false
volume 默认音量 0.3 0-1 0.3
poster 视频封面 string - 视频第一帧

Events

vue3-video-play支持video原生所有事件 video默认事件

事件名称 说明 回调
loadstart 客户端开始请求数据 event
progress 客户端正在请求数据 event
error 请求数据时遇到错误 event
stalled 网速失速 event
play 开始播放时触发 event
pause 暂停时触发 event
loadedmetadata 成功获取资源长度 event
loadeddata event
waiting 等待数据,并非错误 event
playing 开始回放 event
canplay 暂停状态下可以播放 event
canplaythrough 可以持续播放 event
timeupdate 更新播放时间 event
ended 播放结束 event
ratechange 播放速率改变 event
durationchange 资源长度改变 event
volumechange 音量改变 event

视频没有基于任何插件,所以比较小, jscss加起来只有38kb大小,此插件会不断更新,遇到什么问题也可以在github上提issue

插件Github地址 vue-video-player 不妨点个星星

发布于:12分钟前

之前的vue项目中用到视频播放器,但是UI不是很好看,索性就打算写一个视频播放器插件紧随着vue3的发布,vue3的生态还不是很完整,就索性把这个视频播放器插件修改成了vue3版,最终使用vite2+vue3开发

插件Github地址 vue-video-player

先看一下这个播放器(vue3-video-play)的界面吧

video.png

vue3-video-play视频播放插件基于原生的HTML5的 <video> 标签 开发,所以支持的视频格式和 <video> 一致,并且支持<video>标签的所有原生属性和方法

主页

https://xdlumia.github.io

功能一览

  1. 支持快捷键操作
  2. 支持倍速播放设置
  3. 支持镜像画面设置
  4. 支持关灯模式设置
  5. 支持画中画模式播放
  6. 支持全屏播放
  7. 支持网页全屏播放

安装

npm安装:

npm i vue3-video-play --save 
   
  
  

yarn安装:

yarn add vue3-video-play --save 
   
  
  

开始使用

全局使用


   
  
  
  1. import { createApp } from 'vue'
  2. import App from './App.vue'
  3. const app = createApp( App)
  4. import videoPlay from 'vue3-video-play' // 引入组件
  5. import 'vue3-video-play/dist/style.css' // 引入css
  6. ​​​​​​​app. use(videoPlay) app. mount( '#app')

组件内使用


   
  
  
  1. import 'vue3-video-play/dist/style.css'
  2. import { videoPlay } from 'vue-video-player'
  3. export default {
  4. components: {
  5. videoPlay
  6. }
  7. }

SPA 单页面使用示例


   
  
  
  1. <template>
  2. <div>
  3. <videoPlay
  4. v-bind= "options"
  5. @ play= "onPlay"
  6. @ pause= "onPause"
  7. @ timeupdate= "onTimeupdate"
  8. @ canplay= "onCanplay" />
  9. </div>
  10. </template>
  11. <script setup lang="ts">
  12. import { reactive } from 'vue';
  13. import { videoPlay } from '../lib/index.js';
  14. const options = reactive({
  15. width: '800px', //播放器高度
  16. height: '450px', //播放器高度
  17. color: "#409eff", //主题色
  18. muted: false, //静音
  19. webFullScreen: false,
  20. speedRate: [ "0.75", "1.0", "1.25", "1.5", "2.0"], //播放倍速
  21. autoPlay: false, //自动播放
  22. loop: false, //循环播放
  23. mirror: false, //镜像画面
  24. ligthOff: false, //关灯模式
  25. volume: 0.3, //默认音量大小
  26. control: true, //是否显示控制器
  27. title: '', //视频名称
  28. src: "http://vjs.zencdn.net/v/oceans.mp4", //视频源
  29. poster: '', //封面
  30. })
  31. const onPlay = ( ev) => {
  32. console. log( '播放')
  33. }
  34. const onPause = ( ev) => {
  35. console. log(ev, '暂停')
  36. }
  37. const onTimeupdate = ( ev) => {
  38. console. log(ev, '时间更新')
  39. }
  40. const onCanplay = ( ev) => {
  41. console. log(ev, '可以播放')
  42. }
  43. </script>
  44. <style scoped>
  45. </style>

Props

vue3-video-play支持video原生所有属性 video默认属性 使用方式和props属性使用一致

名称 说明 类型 可选值 默认值
width 播放器宽度 string - 800px
height 播放器高度 string - 450px
title 视频名称 string - -
src 视频资源 string - -
color 播放器主色调 string - #409eff
webFullScreen 网页全屏 boolean - false
speedRate 倍速配置 array - [“0.75”, “1.0”, “1.25”, “1.5”, “2.0”]
mirror 镜像画面 boolean - false
ligthOff 关灯模式 boolean - false
muted 静音 boolean - false
autoPlay 自动播放 boolean - false,为true时会自动静音
loop 循环播放 boolean - false
volume 默认音量 0.3 0-1 0.3
poster 视频封面 string - 视频第一帧

Events

vue3-video-play支持video原生所有事件 video默认事件

事件名称 说明 回调
loadstart 客户端开始请求数据 event
progress 客户端正在请求数据 event
error 请求数据时遇到错误 event
stalled 网速失速 event
play 开始播放时触发 event
pause 暂停时触发 event
loadedmetadata 成功获取资源长度 event
loadeddata event
waiting 等待数据,并非错误 event
playing 开始回放 event
canplay 暂停状态下可以播放 event
canplaythrough 可以持续播放 event
timeupdate 更新播放时间 event
ended 播放结束 event
ratechange 播放速率改变 event
durationchange 资源长度改变 event
volumechange 音量改变 event

视频没有基于任何插件,所以比较小, jscss加起来只有38kb大小,此插件会不断更新,遇到什么问题也可以在github上提issue

插件Github地址 vue-video-player 不妨点个星星

猜你喜欢

转载自blog.csdn.net/weixin_64310738/article/details/129074560
今日推荐