【发布时间】:2018-11-01 21:32:20
【问题描述】:
我有一个 gtm 变量,它使用数据层变量来表示购物车订单项。
dataLayer = [{
'cartLineitems': [
{'productCode':'test1','quantity':1},
{'productCode':'test2','quantity':1},
{'productCode':'test3','quantity':1}
]
}];
当购物车更新时,我正在设置一个自定义事件“onCartUpdate”并使用新的购物车 lineitems 数组更新 dataLayer。当数量改变时,这可以正常工作 - 新的 gtm 变量显示数组的第一个元素以及更新的数量。
dataLayer.push({
'event': 'onCartUpdate',
'cartLineitems': [
{'productCode':'test1','quantity':2}},
{'productCode':'test2','quantity':1}},
{'productCode':'test3','quantity':1}
});
但是,当客户从购物车中删除商品时,gtm 似乎并没有看到数组现在的元素减少了。在调试器中,它显示具有 2 个项目的最新版本的数据层,然后它具有“此消息之后的数据层值:”并显示原始值。 “变量”选项卡中显示的值是具有 3 个项目的版本。
dataLayer.push({
'event': 'onCartUpdate',
'cartLineitems': [
{'productCode':'test1','quantity':2}},
{'productCode':'test2','quantity':1}}
});
有谁知道如何正确更新作为数组的数据层变量?
【问题讨论】: