npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

easy-ngx-google-analytics

v1.0.5

Published

Easy Ngx Google Analytics Angular Module

Downloads

74

Readme

easy-ngx-google-analytics

npm version Build Status Li Join the chat at https://gitter.im/easy-ngx-google-analytics/Lobby

Easy Ngx Google Analytics Angular Module

This module used the latest Global Site Tag (gtag.js).

prerequisite

Generates a google analytics tracking ID

It might take up to a day for Real-Time data to show for a new google analytics tracking ID

Installation

npm install easy-ngx-google-analytics --save

install gtag.js by copying the following snippet and pasting it immediately after the head tag on index.html. Replace GA_TRACKING_ID with the tracking ID of the Google Analytics property you want to send data to.

<!doctype html>
<html lang="en">
<head>
    <script async src="https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());
      gtag('config', 'GA_TRACKING_ID', { 'send_page_view': false });
    </script>
  <meta charset="utf-8">
  <title>MyModuleTestApp</title>
  <base href="/">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
  <app-root></app-root>
</body>
</html>

Add below code to your app module. Next we import the EasyNgxGoogleAnalyticsModule to app module

import { RouterModule, Routes } from '@angular/router';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';
// Wr import the EasyNgxGoogleAnalyticsModule
import { EasyNgxGoogleAnalyticsModule} from 'easy-ngx-google-analytics';

const appRoutes: Routes = [
  { path: '', component: AppComponent },
  { path: '1', component: AppComponent },
  { path: '2', component: AppComponent }

];

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    // import the module here
    EasyNgxGoogleAnalyticsModule,
    RouterModule.forRoot(appRoutes)
  ],
  bootstrap: [AppComponent]
})
export class AppModule { }

Finally, we add the code below to inside our app.component.ts(our initial template).

import { EasyAnalyticsConfig } from 'easy-ngx-google-analytics';
import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  // here we configure the analytic module
  template: `<easy-ngx-google-analytics [config] = 'easyAnalyticsConfig'></easy-ngx-google-analytics>`,
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title = 'app';
  easyAnalyticsConfig: EasyAnalyticsConfig = {
  
    // required field, same as the GA_TRACKING_ID
    gaTrackingId : 'UA-XXXXXXXXX-X',
    // If you have any routes you need to ignore, update the config
    // you can add a regex array
    // Here we will add /loading to ignore list
    routesToIgnore : [/\/loading$/],
    
    // you can pass a function/arrow function to remove or add information from the url
    // sometime, we might need to remove the id, or authenticating keys.
    urlTrimmerFunction: (originalUrl: string) => {
      originalUrl = originalUrl.replace(/\d/, '');
      return originalUrl;
    }
  };
}

Support

Chat with us on Join the chat at https://gitter.im/easy-ngx-google-analytics/Lobby

SystemJs

If you use SystemJS to load your files, you might have to update your config with this if you don't use defaultJSExtensions: true:

System.config({
    packages: {
        "/easy-ngx-google-analytics": {"defaultExtension": "js"}
    }
});

License

MIT