javascript - 无法设置未定义的属性(设置“播放器”)ReactPlayer
问题描述
我一直尝试seekTo()
在 ReactPlayer 上使用该方法,但它一直告诉我this
未定义。
function VideoPlayer({
endVideo,
timePlayed,
controls,
playing,
videoDuration
}) {
return (
<div className="video-player">
<ReactPlayer
ref={(player) => {
this.player = player;
}}
url="https://res.cloudinary.com/amarachi-2812/video/upload/v1630370229/videoplayback_1_pr2hzi.mp4"
playing={playing}
// playing={true}
controls={controls}
onStart={() => this.player.seekTo(timePlayed)}
onEnded={endVideo}
/>
</div>
);
}
解决方案
你为什么在箭头函数中使用它?
尝试这个:
import React from "react";
import ReactPlayer from "react-player";
let player;
export const VideoPlayer = ({
endVideo,
timePlayed,
controls,
playing,
videoDuration
}) => (
<div className="video-player">
<ReactPlayer
ref={(ref) => {
player = ref;
}}
url="https://res.cloudinary.com/amarachi-2812/video/upload/v1630370229/videoplayback_1_pr2hzi.mp4"
playing={playing}
// playing={true}
controls={controls}
onStart={() => player.seekTo(timePlayed)}
onEnded={endVideo}
/>
</div>
);
export const MemoizedVideoPlayer = React.memo(VideoPlayer);
推荐阅读
- r - R Group Data,确定重复项,在最早的实例上更新列
- python - 将 RGB 图像转换为棕褐色滤镜的公式是什么?
- r - 在组和年份上循环函数
- python - 如何测试 PyObject 是否有迭代器
- ios - 使用 UserDefaults 保存数据的正确事件是什么?
- javascript - 如何使用 javascript 按钮切换 url
- security - 没有 SSL 的网站显示不需要的广告,添加 SSL 后它们就消失了。是什么导致出现不需要的内容?
- r - 在具有不同包的 git 分支之间切换时的 packrat 恢复
- json - 反应原生:导入具有动态文件名的文件
- c++ - 不明白用双指针创建二维动态数组 (**)