如何将页面查看事件发送到 Angular 中的 Google 跟踪代码管理器
How to send Page View Event to Google Tag Manager in Angular
直到现在,我一直在直接使用 Google Analytics,并且我使用 app.component.ts
中的 JavaScript 手动触发页面查看事件,如下所示:
declare var gtag: Function;
...
constructor(private router: Router) {
const navEndEvents = this.router.events.pipe(
filter((event) => event instanceof NavigationEnd)
);
navEndEvents.subscribe((event: NavigationEnd) => {
gtag('config', 'xxx', {
page_path: event.urlAfterRedirects,
page_title: event.urlAfterRedirects
});
})
}
现在,我想通过 Google 跟踪代码管理器使用 Google 分析,而不是直接使用。我现在应该如何发送页面浏览事件?
我可以使用 angular-google-tag-manager 包来完成。安装和配置包后,您可以非常轻松地将任何事件发送到 GTM。 app.component.ts
中页面查看事件的重构如下所示:
import { GoogleTagManagerService } from 'angular-google-tag-manager';
constructor(private router: Router, private gtmService: GoogleTagManagerService) {
const navEndEvents = this.router.events.pipe(
filter((event) => event instanceof NavigationEnd)
);
navEndEvents.subscribe((event: NavigationEnd) => {
this.gtmService.pushTag({
event: 'pageview',
data: {
page_name: event.urlAfterRedirects
}
});
});
}
直到现在,我一直在直接使用 Google Analytics,并且我使用 app.component.ts
中的 JavaScript 手动触发页面查看事件,如下所示:
declare var gtag: Function;
...
constructor(private router: Router) {
const navEndEvents = this.router.events.pipe(
filter((event) => event instanceof NavigationEnd)
);
navEndEvents.subscribe((event: NavigationEnd) => {
gtag('config', 'xxx', {
page_path: event.urlAfterRedirects,
page_title: event.urlAfterRedirects
});
})
}
现在,我想通过 Google 跟踪代码管理器使用 Google 分析,而不是直接使用。我现在应该如何发送页面浏览事件?
我可以使用 angular-google-tag-manager 包来完成。安装和配置包后,您可以非常轻松地将任何事件发送到 GTM。 app.component.ts
中页面查看事件的重构如下所示:
import { GoogleTagManagerService } from 'angular-google-tag-manager';
constructor(private router: Router, private gtmService: GoogleTagManagerService) {
const navEndEvents = this.router.events.pipe(
filter((event) => event instanceof NavigationEnd)
);
navEndEvents.subscribe((event: NavigationEnd) => {
this.gtmService.pushTag({
event: 'pageview',
data: {
page_name: event.urlAfterRedirects
}
});
});
}