Загрузить внешний скрипт динамически в Angular 8 - PullRequest
0 голосов
/ 08 мая 2020

Я создал приложение, которое загружает статьи в компонент страницы, используя api с нашего сервера. Статья загружается правильно. Проблема в том, что у меня есть встроенный скрипт в API, который не загружается. Как мне обнаружить этот встроенный скрипт или добавить его перед загрузкой страницы, чтобы он отображался?

Это сценарий, который мне нужно добавить на страницу.

<script src="//mywebsite.com/charts/embed/322/"></script>

Я установил свой базовый URL как

chartUrl = https://mysebsite.com/

chartId: number

let url = ${this.chartUrl}charts/embed/${chartId}

Мне нужно получить номер из конца скрипта после вставки /, поэтому для этого примера 322. Поскольку он изменится для каждую диаграмму я не могу жестко запрограммировать.

Это добавляет его в сценарий в шапку.

loadUrl: Promise<any>;

public loadScript() {
    console.log('preparing to load...')
    let node = document.createElement('script');
    node.src = this.url;
    node.type = 'text/javascript';
    node.async = true;
    node.charset = 'utf-8';
    document.getElementsByTagName('head')[0].appendChild(node);
}

ngOnInit() {
    this.loadUrl = new Promise((resolve) => {
      console.log('resolving promise...');
      this.loadScript();
  });
}

Нужно ли мне делать

<div [innerHTML]="someValue| safeHtml"></div>

, чтобы он отображался правильно?

Любая помощь приветствуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...