命令被忽略。未知目标:在 Google 分析跟踪代码中设置自定义维度时未定义

Command ignored. Unknown target: undefined when setting Custom Dimension in Google Analytics tracking code

我正在我的 Google 分析跟踪代码中设置一个自定义维度,但是我在 Chrome 控制台中看到了一个奇怪的错误,并且 Google 分析调试器打开了。

这是我的代码,在每个页面上都会触发。我向区域帐户和 global/rollup 帐户报告,我创建了两个跟踪器来实现此目的。

<script>
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

    ga('create', 'UA-85521872-1', 'auto', 'crmpiccoglobal');
    ga('create', 'UA-85521872-3', 'auto', 'crmpiccoregion');

    ga('set', 'dimension1', 'premium');

    ga('crmpiccoglobal.send', 'pageview');
    ga('crmpiccoregion.send', 'pageview');
</script>

在控制台中我看到了这个:

Running command: ga("set", "dimension1", "premium")

analytics_debug.js:10 Command ignored. Unknown target: undefined

我已经在每个 属性 我想访问它的 GA 中创建了自定义维度。

您需要在 "set" 命令中使用您的跟踪器名称,​​否则 GA 会将命令应用于默认跟踪器 t0(您的示例中不存在):

  ga('crmpiccoglobal.set', 'dimension1', 'premium');
  ga('crmpiccoregion.set', 'dimension1', 'premium');

  ga('crmpiccoglobal.send', 'pageview');
  ga('crmpiccoregion.send', 'pageview');

如果您使用 Google 跟踪代码管理器加载您的 Google 分析并且您不知道正在创建什么跟踪器,请使用此:

sendGa(name : string, data: any) {
    (<any>window).ga(() => {
        const trackers = (<any>window).ga.getAll();
        const firstTracker = trackers[0];
        const trackerName = firstTracker.get('name');
        (<any>window).ga(trackerName + '.' + name, data);
    });
}

文档:https://developers.google.com/analytics/devguides/collection/analyticsjs/accessing-trackers