html-react-parser script

Loading a script tag using html-react-parser

by remarkablemark

HTML

<div id="root"></div>

<script src="https://unpkg.com/html-react-parser@latest/dist/html-react-parser.min.js"></script>

React

// https://github.com/remarkablemark/html-react-parser/issues/98
var html = '<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></' + 'script>';

var element = HTMLReactParser(html, {
  replace: function(domNode) {
    if (domNode.type === 'script') {
      var script = document.createElement('script');
      script.src = domNode.attribs.src;
      script.onload = function() {
        console.log('jQuery loaded:', jQuery.fn.jquery);
      };
      document.head.appendChild(script);
    }
  }
});
console.log(element);

ReactDOM.render(element, document.getElementById('root'));