Как использовать Google DFP в Angular? - PullRequest
0 голосов
/ 16 октября 2018

Я хочу использовать Google DFP (тег издателя Google), но он не работает.

Я определил глобальную переменную, которая содержит googletag:

googletag: any =  window.googletag || {};

Добавление сценария встраница:

addGPTScript() {

  // Ad gtp.js script in the page
  const gads = document.createElement('script');
  gads.async = true;
  gads.type = 'text/javascript';
  const useSSL = 'https:' === document.location.protocol;
  gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js';
  const node = document.getElementsByTagName('script')[0];
  node.parentNode.insertBefore(gads, node);

  if (this.googletag.apiReady) {
    console.log(this.googletag)
  }

  console.log(this.googletag)
}

ngOnInit(): void {
  this.addGPTScript();
}

Но первый файл console.log в условии никогда не загружается, а второй печатает undefined.Я проверил тег HTML HEAD и обнаружил, что скрипт добавлен.

1 Ответ

0 голосов
/ 16 октября 2018

Я заметил, что следующий код не работает:

  // Ad gtp.js script in the page
  const gads = document.createElement('script');
  gads.async = true;
  gads.type = 'text/javascript';
  const useSSL = 'https:' === document.location.protocol;
  gads.src = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js';
  const node = document.getElementsByTagName('script')[0];
  node.parentNode.insertBefore(gads, node);

Я удалил вышеупомянутое и добавил в тег HTML Head:

<script type="text/javascript" async src="https://www.googletagservices.com/tag/js/gpt.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...