我在添加到购物车时设置属性。 例如:
var formdata=[
"items":{
id:123456,
quantity:1
properties:{'flag':true}
}
];
added using api : /cart/add.js
我从 cart.js 获得的详细信息,无需刷新
response from : /cart/add.js and cart.js
[
{
"id": 32423423423423,
"properties": {
"flag": true
},
"quantity": 1,
"variant_id": 42705234345345,
}
]
以上商品已成功添加到购物车。添加后,我再次获取购物车详细信息,它具有此属性值。但是当我刷新页面购物车项目属性时,没有任何值。
Ex 目前,我仅在刷新页面时才收到此信息:
response from cart.js after page refresh
properties:{
Ref: 0
}
这个属性是什么?
为什么会发生这种情况?如果有效,此属性在创建 Webhook 时是否可用?只有刷新后才会消失。此外,添加此属性的主要原因是按照创建 webhook 的顺序接收此属性,以区别于正常顺序。如果有人有其他选择请建议。
将产品添加到购物车,如下所示:
fetch('/cart/add.js', {
method: "post",
headers: {
"content-type": "application/json"
},
body: JSON.stringify({
items: [
{
quantity: 1,
id: 33116507373620,
properties: {
'flag': true
}
}
]
})
})
并像这样获取 cart.js:
fetch('/cart/add.js').then(res => res.json()).then(res => console.log(res))
会给你这样的结果:
{
...
"items": [
{
"id": 33116507373620,
"properties": {
"flag": true
},
"quantity": 1,
...
}
],
...
}
从那里开始,我不确定你正在做什么才能得到这个结果,因为这是有效的/经过测试的,没有问题。
收到
cart.js
响应后,请仔细检查您是否瞄准了正确的对象。 (没有属性直接对象,在本例中位于 items[0].properties
下)
您需要在名称/值结构中表示属性参数,如下所示:
var formdata=[
items: {
id: 123456,
quantity: 1,
properties: [
{
name: "flag",
value: "true"
}
]
}
];