NativeVideo
版本要求:
@ray-js/ray≥0.6.9
描述
原生视频播放组件。
属性
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
src | string | 是 | - | 要播放视频的资源地址,支持网络路径;注意分区部署情况下视频是否支持访问 |
duration | number | 否 | - | 指定视频时长,单位秒 |
controls | boolean | 否 | true | 是否显示默认播放控件(播放/暂停按钮、播放进度、时间) |
autoplay | boolean | 否 | false | 是否自动播放 |
loop | boolean | 否 | false | 是否循环播放 |
muted | boolean | 否 | false | 是否静音播放 |
initialTime | number | 否 | 0 | 指定视频初始播放位置 |
showFullscreenBtn | boolean | 否 | true | 是否显示全屏按钮 |
showPlayBtn | boolean | 否 | true | 是否显示视频底部控制栏的播放按钮 |
showCenterPlayBtn | boolean | 否 | true | 是否显示视频中间的播放按钮 |
objectFit | "contain" | "fill" | "cover" | "none" | 否 | contain | 当视频大小与 video 容器大小不一致时,视频的表现形式 |
poster | string | 否 | - | 视频封面图资源地址 |
showMuteBtn | boolean | 否 | false | 是否显示静音按钮 |
borderWidth | number | 否 | 0 | 边框的宽度,单位 px |
borderStyle | "solid" | "dashed" | 否 | solid | 边框的样式,可选值 solid 和 dashed |
borderColor | string | 否 | #ffffff | 边框的颜色,必须为十六进制格式 |
borderRadius | number | 否 | 0 | 边框的圆角,单位 px |
borderRadiusTopLeft | number | 否 | - | 边框的左上角圆角大小,单位 px |
borderRadiusTopRight | number | 否 | - | 边框的右上角圆角大小,单位 px |
borderRadiusBottomLeft | number | 否 | - | 边框的左下角圆角大小,单位 px |
borderRadiusBottomRight | number | 否 | - | 边框的右下角圆角大小,单位 px |
backgroundColor | string | 否 | #ffffff | 背景颜色,必须为十六进制格式 |
| 否 | - | 当开始/继续播放时触发 | ||
| 否 | - | 当暂停播放时触发 | ||
| 否 | - | 当播放到末尾时触发 | ||
| 否 | - | 播放进度变化时触发 | ||
| 否 | - | 视频进入和退出全屏时触发 | ||
| 否 | - | 视频出现缓冲时触发 | ||
| 否 | - | 视频播放出错时触发 | ||
| 否 | - | 加载进度变化时触发,只支持一段加载 | ||
| 否 | - | 视频元数据加载完成时触发 | ||
| 否 | - | 切换 controls 显示隐藏时触发 | ||
| 否 | - | seek 完成时触发 | ||
updateLayout | unknown | 否 | - | 用来异层组件通知容器层样式更新 |
合法值
objectFit
| 值 | 说明 | 最低版本 |
|---|---|---|
contain | 保持宽高比,完整显示视频,容器可能留白 | - |
fill | 拉伸视频以填满容器,不保持宽高比 | - |
cover | 保持宽高比并填满容器,超出部分裁剪 | - |
none | 保持视频原始尺寸,不进行缩放 | - |
borderStyle
| 值 | 说明 | 最低版本 |
|---|---|---|
solid | 实线边框 | - |
dashed | 虚线边框 | - |
NativeVideoFullscreenChangeDetail.direction
| 值 | 说明 | 最低版本 |
|---|---|---|
vertical | 竖屏方向 | - |
horizontal | 横屏方向 | - |
示例代码
基础用法
播放配置与封面
自定义边框与事件
相关链接
相关 API: createNativeVideoContext。这是基于异层渲染的原生组件, 请注意 原生组件使用限制。
智能生活 App 扫码体验
下载示例代码常见问题
native-video默认宽度 300px、高度 225px,可通过 tyss 设置宽高。- 相关原理请参考 基于异层渲染的原生组件。
- 请注意 原生组件使用限制。
native-video支持的视频格式:MP4(MPEG 4 文件使用 H264 视频编解码器和 AAC 音频编解码器)。