Shopify Ajax API-/cart/update.js无法更新产品数量

时间:2018-12-16 13:27:49

标签: jquery ajax shopify

我正在尝试使用Shopify Ajax API从购物车中移除产品,但是该产品没有被移除,我得到了Unexpected token: ':'  控制台错误。

$(".slide-cart-remove").on("click", function() {
    var id = $(this).attr("id");
    jQuery.post('/cart/update.js', {updates: {id: 0}});
});

在单击“删除”按钮时,我正在调用API以将其数量更新为0。“删除”按钮的ID是我要删除的产品的variant_id这就是为什么我要通过它。

如果有任何区别,这就是我给它与variant_id相同的ID的方法:

$(productRemove).attr("id", data.items[i].variant_id);

语法中是否缺少某些内容?

编辑:如下所述,我尝试将语法更改为此:

jQuery.post('/cart/update.js', {quantity: 0, id: varId});

但是,它似乎仍然不起作用。 (请注意,varId变量包含购物车中产品的实际变体ID

2 个答案:

答案 0 :(得分:2)

您可以使用Shopify文档来解决这一问题。由于设置不正确,您尝试POST到update.js端点的尝试失败。在此处查看调用此端点的正确方法:

https://help.shopify.com/en/themes/development/getting-started/using-ajax-api#update-cart

答案 1 :(得分:0)

我也在尝试移除购物车中的某些物品时遇到了麻烦。添加contentType: 'application/json'并对输入的数据进行字符串化(例如JSON.stringify(data))后,我就成功了。