Artigos sobre: CONSTRUTORES DE PÁGINA
Este artigo também está disponível em:

Usando VTurb com React

Usando VTurb com React



Nesse artigo, vamos aprender a usar VTurb com React em um passo a passo super detalhado.

Segue:

Primeiro vamos precisar instalar o react-helmet

Rode o seguinte comando na sua aplicação para instalá-lo:

Com yarn:

yarn add react-helmet


ou com npm:

npm install --save react-helmet


Importe o "Helmet" na página em que vai ficar o vídeo da seguinte maneira:

import { Helmet } from "react-helmet"


Coloque o vídeo na sua página

Para isso, você precisa colar o código abaixo no local em que o vídeo vai ficar e substituir as informações do código abaixo pelas informações do embed JS do seu vídeo.

<div dangerouslySetInnerHTML={{ __html: 'HTMLDOSEUVÍDEO' }} />
      <Helmet>
        SCRIPTDOSEUVÍDEO
      </Helmet>



Em

HTMLDOSEUVÍDEO

coloque essa parte do código do seu vídeo:



Em

SCRIPTDOSEUVÍDEO

coloque essa parte do código do seu vídeo:




Prontinho! O vídeo já está funcionando na sua aplicação.

Teste ab com react



Caso o seu vídeo seja um teste ab vamos precisar mudar algumas coisas, segue:

Primero remova o id do script do código do teste ab e cole onde está escrito ID_DO_SEU_SCRIPT_DE_TESTEAB e depois cole o script do teste ab sem o id onde está escrito SCRIPT_DO_SEU_TESTEAB

<div dangerouslySetInnerHTML={{ __html: '<script type="text/javascript" id="ID_DO_SEU_SCRIPT_DE_TESTEAB"></script>' }} />
      <Helmet>
        SCRIPT_DO_SEU_TESTEAB
      </Helmet>


O seu script deve ficar dessa forma abaixo e já está tudo certo para rodar o seu teste

<div dangerouslySetInnerHTML={{ __html: '<script type="text/javascript" id="scr_657afe5a6ab1740009719845"></script>' }} />
      <Helmet>
        <script type="text/javascript">var s=document.createElement("script");s.src="https://scripts.converteai.net/12ad2d53-6275-484d-a818-c6c5c23f6c5f/ab-test/scr_657afe5a6ab1740009719845/player.js",s.async=!0,document.head.appendChild(s);</script>
      </Helmet>


Deixando sua página sincronizada com o vídeo



Importe o useEffect e o useState


import { useState, useEffect } from 'react';



Crie um estado para definir se os elementos estão visíveis ou não:


const [isVisible, setIsVisible] = useState(false);


Adicione o código de delay abaixo e altere o tempo em segundos em que deseja que o estado isVisible fique como true:

Dessa forma, você pode mostrar os elementos que deseja apenas quando esse estado estiver como

true


e esconder quando estiver como

false


.

useEffect(() => { /* ALTERE O VALOR 10 PARA OS SEGUNDOS EM QUE AS SEÇÕES VÃO APARECER */ const SECONDS_TO_DISPLAY = 10; /* DAQUI PARA BAIXO NAO PRECISA ALTERAR */ let attempts = 0; let elsDisplayed = false; const alreadyDisplayedKey =`alreadyElsDisplayed${SECONDS_TO_DISPLAY}` const alreadyElsDisplayed = localStorage.getItem(alreadyDisplayedKey); const showHiddenElements = function () { elsDisplayed = true; setIsVisible(true); localStorage.setItem(alreadyDisplayedKey, true) } const startWatchVideoProgress = function () { if (typeof smartplayer === 'undefined' || !(smartplayer.instances && smartplayer.instances.length)) { if (attempts >= 10) return; attempts += 1; return setTimeout(function () { startWatchVideoProgress() }, 1000); } smartplayer.instances[0].on('timeupdate', () => { if (elsDisplayed || smartplayer.instances[0].smartAutoPlay) return; if (smartplayer.instances[0].video.currentTime < SECONDS_TO_DISPLAY) return; showHiddenElements(); }) } if (alreadyElsDisplayed === 'true') { setTimeout(function () { showHiddenElements(); }, 100); } else { startWatchVideoProgress() } }, [])


Prontinho! Os elementos vão ficar sincronizados com o tempo do vídeo em que definiu em segundos.

Exemplo de condição para aparecer apenas quando chegar no tempo definido:

{isVisible && <h1>DELAY TEST</h1>}


Não esqueça de adicionar seu(s) domínio(s) na aba de Segurança, garantindo proteção extra aos seus VSLs.


Saiba mais sobre o assunto em:


Saiba como usar o VTurb com os principais construtores de página!

Diferença entre o Iframe e o código JS

Atualizado em: 22/12/2023

Este artigo foi útil?

Compartilhe seu feedback

Cancelar

Obrigado!