Как включить окно пользовательского поиска Google в компоненте React


0

Я думаю, что у меня есть решение для вас, не используя riskouslySetInnerHTML. Поместите свой код в блок componentDidMount и добавьте элемент с jQuery следующим образом:

componentDidMount(){
const embedcode = `<script>
      (function() {
        var cx = '013626029654558379071:ze3tw4csia4';
        var gcse = document.createElement('script');
        gcse.type = 'text/javascript';
        gcse.async = true;
        gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(gcse, s);
      })();
    </script>
    <gcse:search></gcse:search>`

  $('#gsearch').html(embedcode)
  }

И ваш элемент DOM:

<div id='gsearch'>
</div>

Все еще отлаживаю некоторые стилистические вещи, но это работает!

Лучший, Патрик

JavaScript, reactjs, Google-поиск,

javascript,reactjs,google-search,

0

Ответов: 1


0

Я думаю, что у меня есть решение для вас, не используя riskouslySetInnerHTML. Поместите свой код в блок componentDidMount и добавьте элемент с jQuery следующим образом:

componentDidMount(){
const embedcode = `<script>
      (function() {
        var cx = '013626029654558379071:ze3tw4csia4';
        var gcse = document.createElement('script');
        gcse.type = 'text/javascript';
        gcse.async = true;
        gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(gcse, s);
      })();
    </script>
    <gcse:search></gcse:search>`

  $('#gsearch').html(embedcode)
  }

И ваш элемент DOM:

<div id='gsearch'>
</div>

Все еще отлаживаю некоторые стилистические вещи, но это работает!

Лучший, Патрик

JavaScript, reactjs, Google-поиск,
Похожие вопросы