documentation表示必须以这种方式设置userId:
ga('create', 'UA-XXXX-Y', { 'userId': 'USER_ID' });
但在单页应用程序(SPA)中,用户以匿名方式启动,然后登录。因此,应用程序将从以下开始:
ga('create', 'UA-XXXX-Y', 'auto');
当他登录时,我想更改为跟踪该用户的特定ID,但是当我尝试时:
ga('create', 'UA-XXXX-Y', { 'userId': 'USER_ID' });
没有任何反应,用户ID不会出现在后续请求中。
在运行时设置userId的正确方法是什么?
感谢。
答案 0 :(得分:7)
不幸的是,该文档目前不正确。 可以将用户ID设置在create
方法之外。
您的示例不起作用的原因是因为您正在调用create
两次。你想要做的是致电set
。方法如下:
// Create the tracker instance.
ga('create', 'UA-XXXX-Y', 'auto');
// Once you know the user ID, set it on the current tracker.
ga('set', { userId: USER_ID });
现在发送给GA的所有后续匹配都将与此用户ID相关联。
<强>更新强>
user ID documentation现在反映出它可以在create
方法之外设置。