adopted-ember-addons / adopted-ember-addons/ember-metrics

Google Tag Manager not loading when you specify a data layer in the config

Ouverte
#127 4 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
TypeScript
Étoiles
367
Forks
158
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Hi @poteto

First of all, thanks for your addon, it looks really awesome!

I'm trying to track my app using GTM. I'm only on the first steps of my implementation, and I just did this into environment.js

```
ENV.metricsAdapters = [
{
name: 'GoogleTagManager',
environments: ['development', 'production'],
config: {
id: 'GTM-NLXM2K',
dataLayer: [{
'pageCategory': 'signup',
'visitorType': 'high-value'
}]
}
}
];
```

And this in my router.js file

```
const Router = Ember.Router.extend({
location: config.locationType,
rootURL: config.rootURL,
metrics: Ember.inject.service(),

didTransition() {
this._super(...arguments);
this._trackPage();
},

_trackPage() {
Ember.run.scheduleOnce('afterRender', this, () => {
const page = this.get('url');
const title = this.getWithDefault('currentRouteName', 'unknown');

Ember.get(this, 'metrics').trackPage({ page, title });
});
}
});
```

Basically, nothing fancy, just your example from the Readme doc.

When doing so, I've got this error:
404: GET https://www.googletagmanager.com/gtm.js?id=GTM-NLXM2K&l=%5Bobject%20Object%5D

It's like it doesn't serialize the data layer.

Any clue how I can solve that? Also, I'm very keen to know how you can edit the datalayer on the fly depending on the route. Any example?

Thanks in advance

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.