UNPKG

@vuux/video

Version:

Vue Nuxt 视频播放器

127 lines (126 loc) 2.26 kB
/** * 播放器按钮类型 */ export type Buttons = ['time', 'rate', 'volume', 'setting', 'pip', 'webFull', 'full']; /** * 视频水印类型 */ export interface Watermark { src: string; width?: string; height?: string; } /** * 播放器状态类型 */ export type ButStatus = 'play' | 'pause'; /** * 视频状态类型 */ export type VideoStatus = 'loading' | 'play' | 'playing' | 'paused' | 'ended' | 'error'; /** * 事件消息类型 */ export type Managed = { el: EventTarget; type: string; handler: EventListenerOrEventListenerObject; options?: boolean | AddEventListenerOptions; }; /** * 视频播放器状态类型 */ export interface State { /** * 视频地址 */ src: string; /** * 视频类型 */ type: string; /** * 开始时间 */ startTime: number; /** * 播放按钮状态 */ butStatus: ButStatus; /** * 视频状态 */ videoStatus: VideoStatus; /** * 视频状态提示信息 */ mssage: string; /** * 当前播放时间|格式化为字符串"HH:MM:SS" */ currentTime: string; /** * 当前缓冲进度百分比(0-100) */ loaded: number; /** * 是否循环播放 */ loop: boolean; /** * 控制条是否显示 */ control: boolean; /** * 是否镜像模式 */ mirror: boolean; /** * 是否关灯模式 */ lights: boolean; /** * 视频总时长|格式化字符串"HH:MM:SS" */ totalTime: string; /** * 播放速度 */ speed: number; /** * 当前音量(0-1) */ _volume: number; /** * 播放进度(0-1) */ progress: number; /** * 进度条光标悬停时间|格式化字符串 */ cursorTime: string; /** * 是否全屏 */ full: boolean; /** * 是否静音 */ _muted: boolean; /** * 是否网页全屏模式 */ webFull: boolean; /** * 是否显示封面 */ isPoster: boolean; /** * 延迟隐藏控制条的定时器 ID */ clearTime: number; /** * 当前显示的菜单类型 */ show: string; }