Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

179
Visualizações
¿Qué puedo usar en lugar del constructor de funciones de JavaScript para ejecutar mi función analizada en la aplicación React?

De api obtengo este HTML:

 <div class="my-class" data-src="/event/66478667"></div> <script>(function(d, s, id) {var js,ijs=d.getElementsByTagName(s)[0];if(d.getElementById(id))return;js=d.createElement(s);js.id=id;js.src="https://embed.widget.js";ijs.parentNode.insertBefore(js, ijs);}(document, 'script', 'my-js'));</script>

Ahora estoy analizando este HTML a través del paquete react-html-parser como:

 import parser, { Transform } from 'react-html-parser'; const transform: Transform = (node: { type: string; children: { data: string }[] }) => { if (node.type === 'script' && node.children?.length) { // eslint-disable-next-line no-new-func Function(node.children[0].data)(); } }; const options = { transform, }; return ( <div> {parser(html, options)} </div> );

El HTML contiene un <script> con una función. Pero esta etiqueta <script> no se ejecuta en React jsx, después de analizarse y renderizarse. La única forma de hacer que el widget funcione es cuando uso el constructor de funciones de JavaScript (con un IIFE).

De Eslint obtengo: The Function constructor is eval.eslintno-new-func .

¿Existe tal vez una forma mejor/más segura de ejecutar esta función en mi aplicación React, en lugar de usar el constructor de funciones de JavaScript?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda