Tengo este react.js script que agrega el siguiente código en el html

//returned by the render method
React.DOM.div({
    dangerouslySetInnerHTML:  {
        __html: '<script type="text/javascript" async="" src="//myapp.disqus.com/embed.js"></script>'
    }
})

Ahora mi html parece:

<script type="text/javascript" async="" src="//myapp.disqus.com/embed.js"></script>

Que parece perfecto, pero el problema es que no carga el script.
La etiqueta de secuencia de comandos se inserta en la parte media del cuerpo, anidado dentro de algunas otras etiquetas div.

Lo que podría ser el problema?
Gracias

  • La página no me ayuda porque estoy cargando un archivo externo. ¿Cómo puedo hacer eval en él?
  • desplácese hacia abajo un poco 🙂 stackoverflow.com/a/7054216/1074592
  • solución sucia, para que en React.js class XScript extends React.Component { static initScripts(el, url) { var script = document.createElement('script') script.setAttribute('type', 'text/javascript'); script.setAttribute('src', url); el.appendChild(script); } componentDidMount() { XScript.initScripts(React.findDOMNode(this.refs['it']), this.props.url); } render() { return <div ref="it" dangerouslySetInnerHTML={{__html: '<script type="text/javascript" src="'+this.props.url+'"></script>'}}></div> } }
  • Esto no debería ser marcado como un duplicado porque es específico para ReactJS – las otras respuestas no funcionan en ReactJS
  • Esperemos que esto puede volver a abrir.
InformationsquelleAutor user3446254 | 2014-03-21

3 Comentarios

  1. 2

    Representación de la etiqueta de script a la página de reaccionar no es la solución correcta – me coudln no funciona con JSX, supongo que lo mismo se aplica aquí. No sé por qué, pero sólo tienes que añadir el javascript antiguos manera:

        var script = document.createElement("script");
    
        script.src = "//myapp.disqus.com/embed.js";
        script.async = true;
    
        document.body.appendChild(script);

    Puesto que en el componentWillMount de su componente de la raíz.

  2. 0

    Yo sólo agrega Disqus a mi Reaccionan de la aplicación de ayer. He utilizado el ‘reaccionar-disqus-hilo de módulo y que la tenía en marcha y funcionando en poco tiempo.

    Aquí está en github: https://github.com/mzabriskie/react-disqus-thread

    Y npm: https://www.npmjs.com/package/react-disqus-thread

    El componente tiene los siguientes accesorios:

    • shortname – Esto es ‘myapp’ en //myapp.disqus.com/embed.js
    • identificador único blogId que pueda identificar a su entrada en el blog si la url cambia
    • título
    • url – si no se proporciona este, el módulo detecta la url y la proporcione.
  3. -5

    Navegador que se prueba ? Si el uso de async=»true» en su etiqueta de secuencia de comandos, no cuadra. Pero eso es sólo respaldado por un par de navegadores .

    • chrome ……..
    • El problema es no bloquear o no, el problema es que no es ni siquiera solicitar el archivo del todo.
    • hizo usted obtener esta resuelto? Estoy teniendo el mismo problema con reactjs

Dejar respuesta

Please enter your comment!
Please enter your name here