javascript - 跳过视频时出现 Video.js 错误。进度条在结束前停止
问题描述
Video.Js 有一个奇怪的错误当我使用跳过控件跳过视频时,我确实遇到了这样奇怪的错误:
我的向前跳过看起来像这样:
playerRef.current?.currentTime(playerRef.current?.currentTime() + 10);
我的播放器初始化代码的其余部分基于 Video.js 文档
const videoRef = useRef<HTMLVideoElement | null>(null);
const playerRef = useRef<VideoJsPlayer | null>(null);
const [pause, setPause] = useState(playerRef.current?.paused() ?? true);
useEffect(() => {
// make sure Video.js player is only initialized once
if (!playerRef.current) {
const videoElement = videoRef.current;
if (!videoElement) return;
const player = (playerRef.current = videojs(videoElement, options, () => {
/* video.js pause play control */
player.on('pause', function () {
setPause(true);
playerPause && playerPause(true);
});
player.on('play', function () {
setPause(false);
playerPause && playerPause(false);
playerLive && player.liveTracker.seekToLiveEdge();
});
player.on('ended', function () {
setPause(true);
playerPause && playerPause(true);
});
}));
} else {
}
}, [options]);
// Dispose the Video.js player when the functional component unmounts
useEffect(() => {
return () => {
if (playerRef.current) {
playerRef.current.dispose();
playerRef.current = null;
}
};
}, []);
我试图检查剩余的数量,如果它低于 10 秒,则只跳过剩余时间,但这仍然没有帮助
解决方案
推荐阅读
- python - ParserError:错误标记数据。C 错误:预计第 4 行中有 7 个字段,在读取 csv 文件 pandas 时看到 10 个错误
- c++ - 临时对象在 C++ 中是不可避免的吗?
- java - 无法使用 JAVA 将数据保存到 MYSQL 数据库中
- java - 着色器测试网格 - 线条锯齿状和断裂
- pyspark - XGBClassifier 适合 pyspark 数据框吗?
- c# - 属性更改时,MVVM 中的 DataGridCheckBoxColumn 不会更新
- python - Anaconda 安装,基本使用问题
- javascript - 重新加载应用程序后,babel.config.js 仍在从缓存中运行
- c++ - 在 C++ 中打印素数直到 N
- javascript - 我可以根据 JavaScript 函数的结果更改我的 HTML 网格对象的类吗?