先安装DPlayer
npm install dplayer --save
写一个dplayer组件方便使用
// dplayer.vue
<template>
<div>
<div id="dplayer" :style="dplayerData.style"></div>
</div>
</template>
<script>
import DPlayer from 'dplayer'
export default {
name: 'dplayer',
props: {
dplayerData: Object,
},
data() {
return {}
},
mounted() {
this.dp = new DPlayer({
container: document.getElementById('dplayer'),
theme: '#b7daff', // 风格颜色,例如播放条,音量条的颜色
// loop: false, // 是否自动循环
lang: 'zh-cn', // 语言,'en', 'zh-cn', 'zh-tw'
hotkey: true, // 是否支持热键,调节音量,播放,暂停等
preload: 'auto', // 自动预加载
mutex: true,
video: {
url: '', // 播放视频的路径
defaultQuality: 0, // 默认是HD
pic: '', // 视频封面图片
},
})
},
created() {},
methods: {
// 切换视频源事件
switchVideo(item) {
this.dp.switchVideo({
url: item.video,
pic: item.imgUrl,
})
},
// 暂停事件
pause() {
this.dp.pause()
},
},
}
</script>
<style lang="scss" scoped></style>
其他详细控件事件请看官方文档:指南 | DPlayer
需要播放视频页面引用dplayer.vue组件
<template>
<div>
<dplayer ref="dplayer" :dplayerData="dplayerData"></dplayer>
</div>
</template>
<script>
import dplayer from '@/components/dplayer'
export default {
components: {
dplayer,
},
data() {
return {
dplayerData: {
style:
'width:100%;height:672px;position: absolute;bottom: 0;right: 0;',
},
info: { video: '视频链接', pic: '封面图链接' },
}
},
created() {
setTimeout(() => {
this.switchVideo()
}, 500)
},
methods: {
switchVideo() {
this.$refs.dplayer.switchVideo(this.info)
},
},
}
</script>
<style lang="scss" scoped></style>
就可以啦!
20220815补充:
dplayer有一个网页全屏(webfullscreen)的按钮(如下图),跟全屏作用差不多,但是!!! 一旦按了这个按钮,点击浏览器的返回按钮,返回页面滚动条会消失,导致页面不能滑动,所以为了避免这一现象,可以东巴网页全屏这个按钮给隐藏掉,官方文档没有给按钮绑定消失事件,所以可以从css去给它隐藏掉,如下:
/deep/ .dplayer-full {
.dplayer-full-in-icon {
display: none !important;
}
}
这样就能完美解决啦文章来源:https://www.toymoban.com/news/detail-518553.html
文章来源地址https://www.toymoban.com/news/detail-518553.html
到了这里,关于vue引用DPlayer播放器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!