我有一个 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。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
在评论后正确回复以及我认为我已经理解的内容。
如果您将条件更改为默认值,例如:
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: '' } } }