Google Analytics for your Angular application
Install
``` $ npm install --save googleanalytics-angular ```Usage
Configuration
The Google Analytics tracking script is not included in this module. Make sure to add it to your page. ```js import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { GoogleAnalyticsModule, GATOKEN } from 'googleanalytics-angular'; import { AppComponent } from './app.component'; @NgModule({imports: [
BrowserModule,
GoogleAnalyticsModule.forRoot()
],
declarations: [
AppComponent
],
bootstrap: [AppComponent],
providers: [
{ provide: GA_TOKEN, useValue: 'UA-TOKEN-1' }
]
})
export class AppModule { }
```
It's also possible to leave the configuration empty and configure the library later on through the service.
```js
@NgModule({
imports: [
BrowserModule,
GoogleAnalyticsModule.forRoot()
],
declarations: [
AppComponent
],
bootstrap: [AppComponent]
})
export class AppModule { }
```
Service
Inject theGoogleAnalyticsService
into your components or services.
```js
import { Component, OnInit } from '@angular/core';
import { GoogleAnalyticsService } from 'googleanalytics-angular';
@Component({
templateUrl: 'app.component.html'
})
export class AppComponent implements OnInit {
constructor(
private gaService: GoogleAnalyticsService
) { }
ngOnInit() {
this.gaService.event.emit({
category: 'app',
action: 'bootstrap'
});
}
}
```
Configuration
```js import { Component, OnInit } from '@angular/core'; import { GoogleAnalyticsService } from 'googleanalytics-angular'; @Component({templateUrl: 'app.component.html'
})
export class AppComponent implements OnInit {
constructor(
private gaService: GoogleAnalyticsService
) { }
ngOnInit() {
this.gaService.configure('UA-TOKEN-1');
}
}
```
Named Tracker
More information about named trackers can be foundhere
.
```js
import { Component, OnInit } from '@angular/core';
import { GoogleAnalyticsService } from 'googleanalytics-angular';
@Component({
templateUrl: 'app.component.html'
})
export class AppComponent implements OnInit {
constructor(
private gaService: GoogleAnalyticsService
) { }
ngOnInit() {
var options = {
clientId: 'clientId',
cookieDomain: 'auto',
name: 'trackerName',
namedTracker: true
}
this.gaService.configure('UA-TOKEN-1', options);
}
}
```
API
service.configure(trackingId, options)
trackingId
Type:string
Tracking Id.
options
Type:Object
string
Default:
auto
Any of the Create Only Fields
.
The ability to send to named tracker with option namedTracker
Type:
boolean
Default:
false
service.event.emit(event: Event)
Emit a Google Analytics event.event
category
Type:string
Typically the object that was interacted with (e.g. Video
)
action
Type:string
The type of interaction (e.g. play
)
label
OptionalType:
string
Useful for categorizing events (e.g. Fall Campaign
)
value
OptionalType:
number
A numeric value associated with the event (e.g. 42
)
service.pageview.emit(pageview: PageView)
Emit a Google Analytics page view.pageview
page
Type:string
The path portion of a URL. This value should start with a slash (/) character.
title
OptionalType:
string
The title of the page (e.g. homepage)