前言:之前插入视频我一直想要使用的是网上比较火的vue-video-player,但是出现了找不到

'vue-video-player/src/custom-theme.css'

等问题,以及视频组件串位等问题,也有可能是vue3兼容性的问题,因此,后来采用了这个videojs-player。

流程:首先下载对应的包

npm install video.js @videojs-player/vue --save

然后去官网可以找到自己想要实现的案例效果所对应的代码并使用到自己的项目中来。

videojs-player | Homepage (surmon.me)

可能需要稍作修改,如没有scss,可以去除style标签上对应的lang;去除script上的lang并删掉ts相关的代码或用不到的方法等等。

可以拿我这里改过的实例代码试一试↓

<template><video-playerclass="video-player vjs-big-play-centered"src="https://vjs.zencdn.net/v/oceans.mp4"poster="https://vjs.zencdn.net/v/oceans.png"crossorigin="anonymous"playsinlinecontrols:volume="0.6"        :height="320"        :playback-rates="[0.7, 1.0, 1.5, 2.0]"        @mounted="handleMounted"@ready="handleEvent($event)"@play="handleEvent($event)"@pause="handleEvent($event)"@ended="handleEvent($event)"@loadeddata="handleEvent($event)"@waiting="handleEvent($event)"@playing="handleEvent($event)"@canplay="handleEvent($event)"@canplaythrough="handleEvent($event)"@timeupdate="handleEvent(player?.currentTime())"/>
</template><script>import { defineComponent, shallowRef } from 'vue'import { VideoJsPlayer } from 'video.js'import { VideoPlayer } from '@videojs-player/vue'import 'video.js/dist/video-js.css'export default {name: 'vue-basic-player-example',title: 'Basic player (Vue)',components: {VideoPlayer},setup() {//可打印出当前所触发的事件const handleEvent = (log) => {console.log('Basic player event', log)}return { handleEvent }}}
</script><style scoped>.video-player {background-color: black;width: 100%;}
</style>

可以看到页面实现了对应的效果,基本的播放功能可以实现: 

使用本地文件也是可以的,如require('@/assets/video/test.mp4'),不同项目路径可能会有些许差别。

附加:弹窗关闭视频依旧运行的问题

可以实现在弹窗中播放视频的效果,但是会出现弹窗关闭视频依旧运行的问题。页面虽然关掉了,依旧在播放,可听到声音。

解决方案:可以使用v-if,根据当前弹窗框的显示状态决定video-player是否存在即可实现。

如下例中,通过dialogVisible决定。

<video-player v-if="dialogVisible" class="video-player vjs-big-play-centered" :src="totalsrc"poster="https://vjs.zencdn.net/v/oceans.png" crossorigin="anonymous" playsinline controls :volume="0.6"height="500%" :playback-rates="[0.7, 1.0, 1.5, 2.0]"@mounted="handleMounted"@ready="handleEvent($event)"@play="handleEvent($event)"@pause="handleEvent($event)"@ended="handleEvent($event)"@loadeddata="handleEvent($event)"@waiting="handleEvent($event)"@playing="handleEvent($event)"@canplay="handleEvent($event)"@canplaythrough="handleEvent($event)"@timeupdate="handleEvent(player?.currentTime())"/>

希望本文会对您有所帮助^_^

vue利用videojs-player实现视频播放相关推荐

  1. 91.video.ws index php_如何利用videojs实现视频列表循环播放(完整代码)

    本篇文章给大家带来的内容是关于如何利用videojs实现视频列表循环播放(完整代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 庭审直播 .video-js { /* posit ...

  2. ffmpeg php 快速播放,怎么在PHP中利用FFmpeg函数对视频播放的时长进行获取

    怎么在PHP中利用FFmpeg函数对视频播放的时长进行获取 发布时间:2020-12-18 16:02:20 来源:亿速云 阅读:96 作者:Leah 这篇文章给大家介绍怎么在PHP中利用FFmpeg ...

  3. vue利用 vue-animate-number插件动态展示数字(从0动态滚动到指定数字)

    vue利用 vue-animate-number插件动态展示数字(从0动态滚动到指定数字) 第一步:安装vue-animate-number插件 $ npm install vue-animate-n ...

  4. ant design vue利用rowClassName给table添加行样式

    ant design vue利用rowClassName给table添加行样式 目录 1. 需求:表格每行数据hasVerdict值不为'1'时标红显示 2. 实现方式:table属性rowClass ...

  5. VUE利用transition标签实现摇一摇抽签效果

    VUE利用transition标签监听animation动画执行完毕,触发之后的操作 transition标签文档 实现效果 在线试一试 欢迎各位大佬进群交流

  6. Android Video Player. 安卓视频播放器,封装 MediaPlayer、ExoPlayer、IjkPlayer。模仿抖音,悬浮播放,广告播放,列表播放,弹幕

    DKVideoPlayer 项目地址:dueeeke/DKVideoPlayer 简介: Android Video Player. 安卓视频播放器,封装 MediaPlayer.ExoPlayer. ...

  7. Vue利用Canvas实现逐帧播放图片不闪烁(Vue解决逐帧播放图片闪烁问题)

    Vue利用Canvas实现逐帧播放图片不闪烁 前言 Vue代码实现 实现效果 前言 Vue采用<el-image :src="src"></el-image> ...

  8. 前端vue利用flexpaper实现在线预览

    前端vue利用flexpaper实现在线预览 下载flexpaper 只需要用到js文件和FlexPaperViewer.swf: flexpaper_flash_debug.js flexpaper ...

  9. Vue 使用 video 标签实现视频播放

    写在前面 我们在做项目时常常会碰到要做在页面播放视频的功能,该功能我们可以用video.js来做 关于video.js video.js是一个拥有h5背景的网络视频播放器,同时支持h5以及Flash视 ...

最新文章

  1. windows命令_用Windows恢复环境(WinRE)排除电脑故障,只需一条命令
  2. HMM 模型输入数据处理的优雅做法 来自实际项目
  3. JAVA学习笔记04
  4. MATLAB入门级知识
  5. TextSwitcher--文本切换器
  6. log4net使用指南(转载)
  7. gimp 抠图_GIMP入门教程2——利用蒙版抠图.pdf
  8. ppt复制切片器_听说你还不会用切片器?比筛选好用100倍,小白也能学会!
  9. java基本数据类型转类对象
  10. Python安装pygame教程
  11. 金蝶KIS专业版单据序时簿看不到的问题
  12. 安卓一体机开发板,安卓主板广告机
  13. 用html5做课件,这么好玩!PPT竟然还能用来制作H5?
  14. 解决XWPFRun的addPicture方法无法显示图片的问题
  15. windows10忘记开机密码解决办法
  16. 使用matlab编程给qq或163邮箱等发邮件
  17. 赵小楼《天道》《遥远的救世主》深度解析(7)有几个人能做到肖亚文这样清晰的逻辑和自身定位?
  18. 人机工程学座椅设计_办公座椅设计中人体工程学分析
  19. Win64位系统安装Codewarrior 6.3
  20. “早安、午安、晚安” Game Jam

热门文章

  1. 广西教师招聘需要计算机考试证,2020广西教师招聘报名需要什么资料
  2. 常用的JavaScript技巧
  3. Twinmotion 2019 对比 Lumion9 哪家强?
  4. 蓝桥杯模块之NE555
  5. linux脚本实时监控,linux实时监控命令
  6. Python项目实践之二:下载数据(CSV和JSON )
  7. 全球与中国氧化白藜芦醇市场现状及未来发展趋势(2022)
  8. 中国葡萄酒消费者真正的“痛”
  9. 永磁同步电机的矢量控制策略(十一)一一一弱磁控制
  10. 谁是卧底 android,谁是卧底online