我在我的项目中使用 Google 的模型查看器,不幸的是,它将某些事件视为 non-interaction: false
而它们应该是 non-interaction: true
。在我的例子中,这些是在模型加载时、检测到支持 AR 的用户时以及检测到支持 QR 的用户时触发的事件。
如何手动将这些事件的非交互值设置为 true?我尝试过类似的解决方案但无济于事:
export type AnalyticsEvent = {
type: string;
category: string;
action: string;
label: string;
value: number;
nonInteraction: boolean;
};
export const USER_WITH_AR_SUPPORT_TEMPLATE: AnalyticsEvent = {
type: 'event',
category: AR_CATEGORY,
action: 'UserWithArSupport',
label: '',
value: '',
nonInteraction: true,
};
"kind": "javascript-module",
"path": "src/globals/ArEvents.ts",
"declarations": [
{
"kind": "variable",
"name": "userWithArSupportTemplate",
"type": {
"text": "AnalyticsEvent"
},
"default": "{\n type: 'event',\n category: ARCategory,\n action: 'UserWithArSupport',\n label: '',\n ,\n nonInteraction: true}"
},
我也尝试过解决方案 here ,以及几个类似的。我是否为非交互使用了错误的变量名或索引?
按要求添加了更多代码
public sendGaEvent(uaCode: string, eventData: AnalyticsEvent, sku: string, log: boolean) {
...
const instance = this[$analyticsMap].get(uaCode);
const tracker = instance!.tracker;
if (!tracker) {
const queue = instance!.queue;
queue!.enqueue(eventData);
LoggerInstance.log({
sender: this,
message: 'Enqueuing GA event',
force: log
});
} else {
ga(`${tracker}.send`,
eventData.type,
eventData.category,
eventData.action,
eventData.label,
eventData.nonInteraction,
{
hitCallback: () => LoggerInstance.log({
sender: this,
message: 'GA event successfully sent!',
objectToLog: eventData,
force: log
})
}
);
LoggerInstance.log({
sender: this,
message: 'Sending GA event',
force: log
});
}
...
}
编辑:使用@d-_-b 的建议,我发现将 nonInteraction 作为对象传递的解决方案的正确形式如下:
ga(
'send',
'event',
'AR_CATEGORY',
'UserWithArSupport',
'label',
{'nonInteraction': true}
);
在将名称“nonInteraction”作为对象传递时,在名称“nonInteraction”两边加上引号显然很重要
最佳答案
对于 Universal Analytics,nonInteraction
属性应作为对象 (see docs) 传递:
ga('send', 'event', 'AR_CATEGORY', 'UserWithArSupport', 'label', {
nonInteraction: true
});
如果您使用的是 gtag.js,则需要将 non_interaction: true
添加为 documented here
gtag('event', '<event-name>', {
'event_label': '',
'event_category': 'AR_CATEGORY',
'event_action': 'UserWithArSupport',
'non_interaction': true
});
关于javascript - 如何更改 Google Analytics 中 "non-interaction"事件的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73322479/