Интеграция Google Tag Manager только для указанной c страницы - Angular 8 - PullRequest
0 голосов
/ 25 мая 2020

Спасибо, что прочитали этот вопрос

Я должен показать, сколько пользователей находится только на главной странице.

Но здесь я добавил диспетчер тегов Google в index. html и на главную. component.ts, который вызывает отклик других страниц.

Есть ли способ отслеживать только домашнюю страницу, а не другие страницы?

index. html

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>Title</title>

   <base href="/"> 

  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
  
    <!-- Global site tag (gtag.js) - Google Analytics -->
  <script async src="https://www.googletagmanager.com/gtag/js?id=SECRET"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());
  </script>
</head>

<body>
</body>
</html>

home.component.ts

import { Component, OnInit, OnDestroy} from '@angular/core';
import { filter } from 'rxjs/operators';

declare var gtag;


@Component({
  selector: 'app-home',
  templateUrl: './home.component.html',
  styleUrls: ['./home.component.scss']
})


export class HomeComponent implements OnInit, OnDestroy {

constructor() {
    
      const navEndEvents$ = this.router.events
      .pipe(
        filter(event => event instanceof NavigationEnd)
      );
  
      navEndEvents$.subscribe((event: NavigationEnd) => {
        gtag('config', 'SECRET', {
          'page_path': event.urlAfterRedirects
        });
      });
  }

ngOnInit() {
}

}
...