使用 vue-gtag 和 nuxtjs 將 user_id 傳送到 Google Analytics 4
P粉615886660
P粉615886660 2023-12-19 08:50:16
0
1
574

我有一個 Nuxtjs 專案。 我正在使用 https://github.com/MatteoGabriele/vue-gtag。當使用者 id 存在時,我嘗試將 user_id 傳送到 Google Analytics 4,但程式碼失敗但不起作用。我已簽入 GA4,但沒有資料「使用使用者 ID 登入包括是」:

import Vue from "vue";
import VueGtag from "vue-gtag";

export default ({ $config, $auth }) => {
  const obj = {
    config: {
      id: 'G-XXXXXXXXXX'
    }
  }
  if ($auth?.loggedIn) {
    obj.config.params = {user_id: $auth.user.sub}
  }
  Vue.use(VueGtag, obj, app.router)
}

下面的程式碼正在運行:

import Vue from "vue";
import VueGtag from "vue-gtag";

export default ({ $config, $auth }) => {
  Vue.use(VueGtag, {
    config: {
      id: 'G-XXXXXXXXXX',
      params: {
        user_id: '122xzczxc'
      }
    }
  }, app.router)
}

我可以幫你嗎?當 user_id 存在時,我想將 user_id 傳送到 GA4。

P粉615886660
P粉615886660

全部回覆(1)
P粉135799949

在評論後正確回覆以及我認為我已經理解的內容。

如果您將條件變更為預設值,例如:

if ($auth?.loggedIn) {
  obj.config.params = {user_id: '123-update-id'}
}

這不起作用。

但是如果你像這樣初始化你的物件:

const obj = {
  config: {
    {
      id: 'G-XXXXXXXXXX',
      params: {
      user_id: '123-default-id'
    }
  }
}

$auth?.loggedIn 上的條件將會起作用並指派值。

在這種情況下,問題只是你需要為你的物件有一個預設的結構。在這種情況下,物件不會建立可能導致非同步或結構問題的新屬性,它只是更新屬性。

就這樣做:

const obj = {
  config: {
    {
      id: 'G-XXXXXXXXXX',
      params: {
      user_id: ''
    }
  }
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板