【问题标题】:vue laravel | GTM Integrationvue laravel | GTM 集成
【发布时间】:2019-04-29 21:29:48
【问题描述】:

我有一个 Laravel Vue 设置。

Package.json

{
  "devDependencies": {
    "axios": "^0.15.3",
    "babel-preset-es2015": "^6.24.1",
    "bootstrap": "4.0.0-beta",
    "cross-env": "^3.2.3",
    "jquery": "^3.1.1",
    "laravel-mix": "1.2.0",
    "lodash": "^4.17.4",
    "vue": "^2.4.2"
  },
  "dependencies": {
    "favico.js": "^0.3.10",
    "intersection-observer": "^0.5.0",
    "laravel-echo": "^1.3.2",
    "moment-timezone": "^0.5.14",
    "popper.js": "^1.12.2",
    "pusher-js": "^4.2.1",
    "sweetalert2": "^6.6.8",
    "vue-image-crop-upload": "^1.3.15",
    "vue-moment": "^2.0.2",
    "vue-multiselect": "2.0.2",
    "vue-observe-visibility": "^0.3.1",
    "vue-switches": "^1.1.7",
    "vue-template-compiler": "^2.4.2"
  }
}

我正在尝试集成 GTM。我本可以使用 vue-gtm,但由于我没有使用 vue-router,因此很难配置。我正在使用 Laravel 路由。

有什么解决方案可以整合它?

如果有人知道如何将spatie/laravel-googletagmanager 与 vue 集成。请帮帮我。

【问题讨论】:

    标签: laravel vue.js google-tag-manager


    【解决方案1】:

    vue-gtm 不需要路由器。它只是将其自动化并使其更容易,并不意味着您必须这样做。

    import VueGtm from 'vue-gtm';
    import VueRouter from 'vue-router';
    const router = new VueRouter({ routes, mode, linkActiveClass });
    
    Vue.use(VueGtm, {
      id: 'GTM-xxxxxxx', // Your GTM ID
      enabled: true, // defaults to true. Plugin can be disabled by setting this to false for Ex: enabled: !!GDPR_Cookie (optional)
      debug: true, // Whether or not display console logs debugs (optional)
      vueRouter: router, // Pass the router instance to automatically sync with router (optional)
      ignoredViews: ['homepage'] // If router, you can exclude some routes name (case insensitive) (optional)
    });
    

    您可以完全忽略上面添加的vueRouter 和ignoredViews 参数。

    然后在你需要调度事件的组件中:

    this.$gtm.trackEvent({
      event: null, // Event type [default = 'interaction'] (Optional)
      category: 'Calculator',
      action: 'click',
      label: 'Home page SIP calculator',
      value: 5000,
      noninteraction: false // Optional
    });
    

    您可以在任何操作上计算该功能。页面加载、点击、表单提交等。只需更改属性以满足您的需求。

    【讨论】:

    • 在 app.js 上尝试过,但它并没有跟踪所有路线......无论我们在哪条路线上都只是索引页面......这是正确的放置位置吗??跨度>
    • 你能回复吗?如何整合它。没有提供任何步骤,并且它在 app.js 中不起作用....你能给我提供一个演示集成步骤吗..
    • @HimanshuBansal 你需要使用trackView 方法。因此,例如,在 /about 页面的主要组件中,您将在 mounted() 方法中使用 this.$gtm.trackView('about', '/about')。
    • 你能告诉我在哪里添加导入代码。它不是在 app.js 文件中还是在其他地方??
    • 我不确定你指的是什么导入代码,朋友。
    猜你喜欢
    • 2018-06-17
    • 2019-06-29
    • 2021-12-16
    • 1970-01-01
    • 2018-08-28
    • 2020-06-03
    • 2019-02-09
    • 1970-01-01
    • 2020-09-25
    相关资源
    最近更新 更多