Vue-CoreVideoPlayer 视频播放器组件
安装
cnpm install -S vue-core-video-player
快速使用
# 在main.js中
import VueCoreVideoPlayer from 'vue-core-video-player'
Vue.use(VueCoreVideoPlayer) # 默认是英文的
'''做国际化'''
import VueCoreVideoPlayer from 'vue-core-video-player'
Vue.use(VueCoreVideoPlayer, {
lang: 'zh-CN' # 可以修改成中文
})
# 在你的组件中使用
<div id="app">
<div class="player-container">
<vue-core-video-player src="视频路径"></vue-core-video-player>
</div>
</div>
基本配置
# 设置多分辨率视频,你必须resolution, src,默认的分辨率会选择 '720p'。可以指定选择的分辨率通过resolution这个属性来设置。
const videoSource = [
{
src: 'https://media.vued.vanthink.cn/sparkle_your_name_am360p.mp4',
resolution: 360,
}, {
src: 'https://media.vued.vanthink.cn/sparkle_your_name_am720p.mp4',
resolution: 720,
}, {
src: 'https://media.vued.vanthink.cn/y2mate.com%20-%20sparkle_your_name_amv_K_7To_y9IAM_1080p.mp4',
resolution: 1080
}
]
视频播放控制
| Props | Type | Example | Description |
|---|---|---|---|
| volume | number | 0.5 |
控制视频音量(0-1) |
| muted | boolean | true |
设置为 true, 视频会静音 |
| cover | string | './cover.png' |
显示视频的封面,如果设置 autoplay,自动播放成功后,不会显示 |
| title | string | 'your title' |
展示视频的标题,方便 SEO |
| logo | string | './logo.png' |
显示播放器的 logo |
| loop | boolean | true |
会循环播放当前视频 |
| preload | string | 'metadata' |
'none' 表示不会预加载视频; 'metadata' 表示只加载视频 metadata 信息部分 |
演示示例
<template>
<div id="app">
<div class="player-container">
<vue-core-video-player :src="videoSource" :cover="cover" :title= "title" loop="true"/>
</div>
</div>
</template>
<script>
export default {
name: 'app',
data() {
return {
videoSource:'视频地址'
cover : "显示视频的封面",
title : "视频的标题"
}
}
}
</script>
事件订阅
| 事件 | 触发条件 |
|---|---|
| play | 表示当播放器开始播放或者通过 play() 方法从暂停状态恢复 |
| pause | 当播放器停止播放的时候触发 |
| progress | 当播放器正在下载媒体资源 |
| loadeddata | 当播放器开始加载第一帧时候触发 |
| canplay | 当加载足够数据可以满足基本播放后触发 |
| durationchange | 当媒体获取一定数据,并且完整的解析出 metadata 信息 |
| ended | 当媒体播放结束时候触发 |
| timeupdate | 当播放的媒体 currenttime 发生改变时候触发 |
| seeked | 当用户 seek 操作完成触发 |
演示示例
<template>
<div class="player-container">
<vue-core-video-player :scr="path" @loadeddata="loaded" @play="playFunc" @pause="pauseFunc"></vue-core-video-player>
</div>
<template>
<script>
export default {
methods: {
loaded () {
console.log('视频开始加载第一帧的时候触发')
},
playFunc () {
console.log('播放器开始播放或从暂停到播放状态')
},
pauseFunc () {
console.log('视频停止播放的时候触发')
}
}
}
Vue-CoreVideoPlayer 视频播放器组件的更多相关文章
- 手把手从零开始---封装一个vue视频播放器组件
现在,在网页上播放视频已经越来越流行,但是网上的资料鱼龙混杂,很难找到自己想要的,今天小编就自己的亲身开发体验,手把手从零开始---封装一个vue视频播放器组件. 作为一个老道的前端搬砖师,怎么可能会 ...
- vue-core-video-player-基于vue.js的视频播放器组件
一 介绍 一款基于 vue.js 的轻量级的视频播放器插件插件 个性化配置 i18n 服务端渲染 画中画模式 事件订阅 易于开发 移动端适配 1.1 官方文档 https://core-player. ...
- 从0到1搭建一款Vue可配置视频播放器组件(Npm已发布)
前言 话不多说,这篇文章主要讲述如何从0到1搭建一款适用于Vue.js的自定义配置视频播放器.我们平时在PC端网站上观看视频时,会看到有很多丰富样式的视频播放器,而我们自己写的video标签样式却是那 ...
- VUE创建播发器组件并调用
欢迎来到我的友链小屋 首先用vue-cli创建前端项目 参考:https://www.cnblogs.com/ouyangkai/p/11549290.html 新建play.vue文件 编写pl ...
- "视频播放器"组件:<video-player> —— 快应用组件库H-UI
 <import name="video-player" src="../Common/ui/h-ui/media/c_video_player"> ...
- React Native实战系列教程之自定义原生UI组件和VideoView视频播放器开发
React Native实战系列教程之自定义原生UI组件和VideoView视频播放器开发 2016/09/23 | React Native技术文章 | Sky丶清| 4 条评论 | 1 ...
- 基于Vue.js的Web视频播放器插件vue-vam-video@1.3.6 正式发布
前言 今日正式发布一款基于Vue.js的Web视频播放器插件.可配置,操作灵活.跟我一起来体验吧! 线上地址体验 基于vue3.0和vue-vam-video,我开发了一款在线视频播放器. 网址: h ...
- 你是否有一个梦想?用JavaScript[vue.js、react.js......]开发一款自定义配置视频播放器
前言沉寂了一周了,打算把这几天的结果呈现给大家.这几天抽空就一直在搞一个自定义视频播放器,为什么会有如此想法?是因为之前看一些学习视频网站时,看到它们做的视频播放器非常Nice!于是,就打算抽空开发一 ...
- vue.js相关UI组件收集
内容 UI组件 开发框架 实用库 服务端 辅助工具 应用实例 Demo示例 ###UI组件 element ★9689 - 饿了么出品的Vue2的web UI工具套件 Vux ★6927 - 基于Vu ...
- 打造 Vue.js 可复用组件
Vue.js 是一套构建用户界面的渐进式框架.我们可以使用简单的 API 来实现响应式的数据绑定和组合的视图组件. 从维护视图到维护数据,Vue.js 让我们快速地开发应用.但随着业务代码日益庞大,组 ...
随机推荐
- pysimplegui之元素常用属性
常用元素参数 您将在几乎所有元素创建调用中看到的一些参数包括: key - 与 window[key].事件和返回值字典一起使用 工具提示tooltip - 将鼠标悬停在元素上,您将获得包含此文本的弹 ...
- Java Heap
堆 堆是一种基于树的数据结构,是一种完全二叉树,堆中的所有的节点都按照特定的顺序排列. 在堆数据结构中,如果任意父节点的值都大于其子节点,则会产生一个大顶堆:反之,如果任意父节点的值都小于其子节点,则 ...
- RxJava--create源码分析
使用示例: Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe( ...
- python:模拟购票的小程序
问题描述:小白学习python的第N天,继续练习.做一个模拟购票的小程序,没有用数据库和文件来存储数据,只是能够单词选择. # hzh 每天进步一点点 # 2022/5/13 17:24 import ...
- Redis分布式锁这样用,有坑?
背景 在微服务项目中,大家都会去使用到分布式锁,一般也是使用Redis去实现,使用RedisTemplate.Redisson.RedisLockRegistry都行,公司的项目中,使用的是Redis ...
- C++核心知识回顾(自定义数据类型)
复习C++ 类 自定义数据类型最灵活的方式就是使用C++的类结构 现在定义一个货币类型Currency: enum signType{PLUS,MINUS}; class Currency { pub ...
- 借助 APISIX Ingress,实现与注册中心的无缝集成
作者张晋涛,API7.ai 云原生技术专家,Apache APISIX PMC 成员,Apache APISIX Ingress Controller 项目维护者. 原文链接 云原生场景下是否需要服务 ...
- 2023-04-20:有一堆石头,用整数数组 stones 表示 其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将它们一起粉碎 假设石头的重量分别为 x 和
2023-04-20:有一堆石头,用整数数组 stones 表示 其中 stones[i] 表示第 i 块石头的重量. 每一回合,从中选出任意两块石头,然后将它们一起粉碎 假设石头的重量分别为 x 和 ...
- 【Python毕业设计】基于Python+Flask+MySQL的学生信息管理系统(附完整源码)
1.项目说明基于python+Flask+mysql的学生信息管理系统项目实战 项目需要安装pycharm专业版,mysql数据库以及项目所需的所有模块创建数据库名称db_online_notes,然 ...
- springboot整合cas回调地址使用nginx配置出错
nginx配置后台为 location /apis springboot基础cas回调时访问地址为nginx域名+apis回调.为什么没有成功.页面只回调域名+登录方法路径,而不是域名+apis+登录 ...