Usando Embla Carousel , versión React , estoy tratando de encender/apagar el carrusel en función del punto de interrupción. Entonces, para dispositivos móviles, está activado y para tabletas, está desactivado. Esto es lo que probé que parece funcionar inicialmente, pero no se reiniciará. Supongo que se debe a que se llamó a destory para que pueda reinicializar e intentar init , pero tampoco hubo suerte.
const emblaOptions = {}; const [viewportRef, emblaApi] = useEmblaCarousel(emblaOptions); const handleEmblaInit = () => { if (window.innerWidth > 768) { emblaApi.destroy(); } else { emblaApi.reInit(emblaOptions); } }; useEffect(() => { if (emblaApi) { handleEmblaInit(); window.addEventListener("resize", handleEmblaInit); } }, [emblaApi]);Pase nulo en lugar de emblaRef cuando desee que esté inactivo, como se muestra aquí:
https://github.com/davidcetinkaya/embla-carousel/issues/99#issuecomment-688730519