Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS谷歌分析动态跟踪器_Javascript_Angularjs_Google Analytics - Fatal编程技术网

Javascript AngularJS谷歌分析动态跟踪器

Javascript AngularJS谷歌分析动态跟踪器,javascript,angularjs,google-analytics,Javascript,Angularjs,Google Analytics,我正在尝试在Angular应用程序中设置两个分析跟踪程序。我的要求之一是为每个登录到应用程序的用户设置一个跟踪器,将页面跟踪和事件数据转发到配置时已知的静态跟踪器。但是,用户登录后,需要在运行时设置第二个跟踪器。它需要将分析数据发送到与其帐户关联的跟踪器 我刚开始使用google analytics,我认为这就像推ga命令队列到跟踪器一样简单,但在阅读了analytics开发者的文献之后,我似乎必须明确地向这两个跟踪器发送页面跟踪命令 因此,我没有重新发明轮子,而是希望它能解决我的问题。但是,它

我正在尝试在Angular应用程序中设置两个分析跟踪程序。我的要求之一是为每个登录到应用程序的用户设置一个跟踪器,将页面跟踪和事件数据转发到配置时已知的静态跟踪器。但是,用户登录后,需要在运行时设置第二个跟踪器。它需要将分析数据发送到与其帐户关联的跟踪器

我刚开始使用google analytics,我认为这就像推ga命令队列到跟踪器一样简单,但在阅读了analytics开发者的文献之后,我似乎必须明确地向这两个跟踪器发送页面跟踪命令

因此,我没有重新发明轮子,而是希望它能解决我的问题。但是,它抱怨没有在运行时设置跟踪器。我试着用

AnalyticsProvider.delayScriptTag(true)

然后对数组进行变异

Analytics.configuration.accounts

但它似乎没有产生任何效果

如果有人在过去有过这样的经验,请让我知道,我正在寻找一个干净的解决方案,除了在ga命令队列周围放置一个包装器,除非这是我的最佳选择


谢谢

响应有点晚,但对于那些可能有帮助的人,我最终创建了一个负责设置动态跟踪器的
分析服务。为了让它工作,我在我的应用程序的
config

AnalyticsProvider.delayScriptTag(true);
AnalyticsProvider.ignoreFirstPageLoad(true);
AnalyticsProvider.setPageEvent('$stateChangeSuccess');
这延迟了自动跟踪的初始化。然后我分叉并添加了以下代码

this._kickOffAutoTracking = function() {
  // activates page tracking
  if (trackRoutes) {
    $rootScope.$on(pageEvent, function () {
      that._trackPage();
    });
  }
};
最后,在我的
analyticsService
中,我提出了API请求,获得了用户的跟踪器,并将其添加如下:

Analytics.setAccount([
  { tracker: DEFAULT_TRACKER, name: "defaultTracker", trackEvent: true },
  { tracker: user.analyticCode, name: "userTracker" }
])

Analytics.createAnalyticsScriptTag();
Analytics.kickOffAutoTracking();

这是一个快速而肮脏的解决方案。

您能发布配置代码吗?