Estaba creando este componente React y me sorprendió el hecho de que cuando hice clic en el video obtuve false en la consola inmediatamente después de que comenzó el video. Esperaba que se imprimiera true cuando comenzara el video y false cuando terminara. Creo que estoy confundiendo el ciclo de vida de este componente en particular, y estaría muy agradecido si alguien pudiera aclararme esto.
const Video = ({src, type, index, isAutoPlay}) => { const [play, setPlay] = useState(isAutoPlay) const playRef = useRef(); useEffect(() => { if (play && playRef.current) { playRef.current.play(); } return () => setPlay(false) }, [play]); return ( <> <video className="slide" ref={playRef} onClick={() => { setPlay(true); console.log(play);}}> <source src={src} type={type} key={index}/> Your browser does not support the video tag. </video> </> ) }