我在angular7项目中使用angulartics2向facebook和google analytics发起事件。
我有facebook和谷歌分析配置使用谷歌标签管理器。
问题是我的自定义事件被触发并发送到facebook,而不是google analytics。
在<head>标签下面,我有谷歌标签管理器代码。
在main component typescript文件中,我添加了以下代码:
constructor(
private angulartics2GoogleTagManager: Angulartics2GoogleTagManager,
private angulartics2Facebook: Angulartics2Facebook,
private angulartics2GoogleAnalytics: Angulartics2GoogleAnalytics
) {
this.angulartics2Facebook.startTracking();
this.angulartics2GoogleTagManager.startTracking();
this.angulartics2GoogleAnalytics.startTracking();
...例如,当人们向购物车添加商品时,我想激发一个有关它的事件。
所以在我的购物车服务中,我在构造函数中注入了angulartics2:
constructor(@Inject(LOCAL_STORAGE) private storage: StorageService,
private angulartics2: Angulartics2
) 然后在相关的地方,我用下面的代码触发事件:
this.angulartics2.eventTrack.next({action: 'addToCart', properties: {category: 'Cart', label: keyName, value: quantity}});使用facebook像素chrome扩展,我可以看到检测到自定义事件,使用google events chrome扩展,我可以看到没有检测到任何事件。
我遗漏了什么?我没有正确配置的是什么?
谷歌分析在谷歌标签管理器中配置正确,我确实看到用户计数和页面浏览量计数正常。
任何关于这个问题的信息都将不胜感激。
谢谢
更新
感谢@XTOTHEL提供更多的调查信息。
因此,在app.component.ts构造函数中,我只启用了google tag manager来开始跟踪。
不幸的是,google标签管理器没有检测到任何被触发的事件。
附加了一个谷歌标签管理器控制台的屏幕截图后,添加东西到购物车和添加addToCart自定义事件的angulartics2代码被激发。

更新2


发布于 2020-01-08 06:41:16
我不知道这是不是你要找的东西,但是我从Angulartics2GoogleTagManager那里得到了一些pushLayer方法的GTM事件,来自一个在Angulartics2GoogleTagManager上扩展的服务:
@Injectable()
export class GoogleTagManagerService extends Angulartics2GoogleTagManager {
public gtmProperties: GoogleTagManagerProperties = new GoogleTagManagerProperties();
pageTrack(path: string) {
if (typeof dataLayer !== 'undefined' && dataLayer) {
dataLayer.push({
event: 'pageView',
action: path,
'content-name': path,
userId: this.angulartics2.settings.gtm.userId,
...this.gtmProperties
});
}
return true;
}
setSearchCriteria(type: string, criteria) {
this.pushLayer(type.toLowerCase().indexOf('listings') > -1 ?
{
event: 'search',
action: type,
'content-name': type,
userId: this.angulartics2.settings.gtm.userId,
searchCriteriaListings: criteria
} : {
event: 'search',
action: type,
'content-name': type,
userId: this.angulartics2.settings.gtm.userId,
searchCriteriaPostings: criteria
});
}
}这将为我带来一个新的dataLayer,其中包含以下信息:

https://stackoverflow.com/questions/53203973
复制相似问题