React - hooks中监听video播放或暂停

1,277 阅读1分钟

useEffect中通过addEventListener可监听视频操作变化

  const videoDom = useRef();

  useEffect(() => {
    const pauseFun = () => console.log("暂停");
    videoDom.current.addEventListener('pause', pauseFun);
    
    const playFun = () => console.log("播放");
    videoDom.current.addEventListener('play', playFun);
    
    // 取消监听
    return () => {
        videoDom.current.removeEventListener('pause', pauseFun);
        videoDom.current.removeEventListener('play', playFun);
    }
  }, []);

html部分:

<video ref={videoDom} src=""></video>

. . .

补充: MDN地址:developer.mozilla.org/zh-CN/docs/…