Saltar al contenido

¿Cómo reproducir/pausar un video en React sin una biblioteca externa?

Ten en cuenta que en la informática un problema casi siempre tiene más de una resoluciones, por lo tanto nosotros aquí te mostraremos lo mejor y más óptimo.

Solución:

La forma más sencilla sería utilizar refs que es una característica de React que le permitirá invocar métodos en las instancias de componentes que ha devuelto de un render().

Puede leer un poco más sobre ellos en los documentos: https://facebook.github.io/react/docs/more-about-refs.html

En este caso solo agrega un ref string para usted video etiqueta así:


De esa manera, cuando agregue controladores de clic a sus botones:


los playVideo tendrá acceso a su video de referencia a través de refs:

playVideo() 
  this.refs.vidRef.play();

Aquí hay una DEMO que funciona para que pueda ver un ejemplo completo.

Ejemplo actualizado para los componentes de la función React:

import React,  useRef from 'react'

function myComponent(props) 
  const vidRef = useRef(null);
  const handlePlayVideo = () => 
    vidRef.current.play();
  
  return (
    
  )



La respuesta aceptada fue usar el estilo de reacción antiguo, si quieres hacerlo con ES6

Un componente simple para pausar la reproducción automática junto con controles manuales que reproducen la introducción de Polestar:

    import React from "react";
    class Video extends React.Component 
      componentDidMount = () => 
        this.playVideo();
      ;

      componentWillUnmount = () => 
          this.pauseVideo();
      ;


      playVideo = () => 
        // You can use the play method as normal on your video ref
        this.refs.vidRef.play();
      ;

      pauseVideo = () => 
        // Pause as well
        this.refs.vidRef.pause();
      ;

      render = () => 
        return (
          
); ; export default Video;

Vídeo de https://www.polestar.com/cars/polestar-1

Aquí puedes ver las comentarios y valoraciones de los lectores

Te invitamos a añadir valor a nuestra información dando tu veteranía en las interpretaciones.

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 5)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *