Google Analytics(分析)通过trackingId获取跟踪器

时间:2018-06-24 07:11:35

标签: javascript google-analytics

我目前有此代码,以尝试找到我需要的正确的跟踪器(在8-12个跟踪器中):

ga.getAll().forEach(function(tracker) {
    if(tracker.get('trackingId') === "UA-62921111-4") {

除了获取每个跟踪器并对其进行遍历之外,还有一种简单的方法来执行类似ga.getTracker("UA-62921111-4")的事情吗?

2 个答案:

答案 0 :(得分:1)

analytics.js上没有ga.getAll。它只有(function(){ trackers = {} ga.getAll().forEach(function(tracker) { trackers[tracker.get('trackingId')]=tracker; }); ga.getTracker=function(id){ if(trackers[id]) return trackers[id]; }; })(); ga.getTracker

供您参考,您可以检查一下。 https://developers.google.com/analytics/devguides/collection/analyticsjs/accessing-trackers

因此,为了满足您的需要,我编写了以下代码,应在加载analytics.js之后添加到您的文件中:

ga.getTracker("UA-62921111-4")

这基本上会一次获取所有跟踪器并将它们存储在一个对象中,并定义缺少的<div class="content-wrapper"> <div class="container-fluid"> <div id="content"> <h1>My First PDF</h1> <p>Hello Welcome To Easy Lab Reservation System</p> </div> <button (click)="downloadPdf()" class="btn btn-info">Create Report</button> </div>

所以现在您可以调用import {Component, ElementRef, OnInit, ViewChild} from '@angular/core'; import * as JSPDF from 'jspdf'; @Component({ selector: 'app-report', templateUrl: './report.component.html', styleUrls: ['./report.component.css'] }) export class ReportComponent implements OnInit { @ViewChild('content') content: ElementRef; constructor() { } ngOnInit() { } downloadPdf(){ const doc = new JSPDF(); let specialElementHandlers = { '#editor' : function(elemnt, renderer){ return true; } }; let content = this.content.nativeElement; doc.fromHTML(content.innerHtml,10,10,{ 'width': 190, 'elementHandlers': specialElementHandlers }); doc.save('MyFirst.pdf'); } } 函数来获取跟踪器。

答案 1 :(得分:0)

我发现这是一个不错的选择:

var tracker = ga.getAll().filter(tracker => (tracker.get('trackingId') === 'UA-62925944-4'))[0]

但是请注意,如果您有多个跟踪器,则ga在加载所需的跟踪器之前似乎已经准备就绪。我想从表单字段的跟踪器获取数据,所以我在提交时插入了这些字段,以确保所有内容都已加载。