Как вызвать функцию из сторонней библиотеки, динамически загружаемой в React - PullRequest
0 голосов
/ 30 апреля 2020

Мы тестируем веб-виджет ZenDesk, и у меня есть некоторый код, который динамически импортирует сценарии на основе среды со следующим кодом в базовом файле html.

<script type='text/javascript'>
    if (window.location.host === 'localhost') {
      var src = "https://static.zdassets.com/ekr/snippet.js?key=<our key>";
      var newScript = document.createElement("script");
      newScript.type = "text/javascript";
      newScript.id = "ze-snippet";
      newScript.setAttribute("async", "true");
      newScript.setAttribute("src", src);
      document.body.appendChild(newScript);
    }
  </script>

Справка Функция Dynami c основана на URL, но, будучи SPA, мне нужно вручную вызывать функцию обновления каждый раз, когда изменяется URL. Как мне go получить доступ к функции в сторонней библиотеке, которая загружается динамически?

Функция, которая должна вызываться при изменении маршрута, выглядит следующим образом:

 zE('webWidget', 'helpCenter:setSuggestions', {
     url: true
 });

Мое приложение, очевидно, понятия не имеет, что такое zE, так что это не сработает. Есть ли лучший способ сделать это?

...