首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Snipcart使用JavaScript v3添加项目

Snipcart使用JavaScript v3添加项目
EN

Stack Overflow用户
提问于 2021-02-25 22:05:58
回答 1查看 126关注 0票数 0

我正在尝试复制一个非常好的教程,关于如何在购物车中将每一件商品放在自己的行中。你可以在这个link上找到它。不幸的是,本教程使用的是Snipcart v2,我希望将其与v3一起使用。

我面临的问题是,将商品添加到购物车中是无休止的重复。我不确定,但我猜这与Javascript SDK添加的每一项都会触发item.adding事件有关。

由于Snipcart没有任何支持,除了每周一句简单的话,我希望在这里找到一个善良的灵魂,愿意帮助我。

这是我的代码:

代码语言:javascript
复制
document.addEventListener('snipcart.ready', () => {
        Snipcart.events.on('item.adding', (item) => {

            var quantity = item.quantity;
            item.quantity = 1;

            var products = new Array(quantity).fill({
                id: item.id,
                name: item.name,
                price: item.price,
                url: item.url,
                customFields: item.customFields,
                quantity: item.quantity,
                stackable: "never"
            });

            products.forEach(async product =>  {
                try {
                    await Snipcart.api.cart.items.add({
                        id: product.id,
                        name: product.name,
                        price: product.price,
                        url: product.url,
                        quantity: product.quantity,
                        customFields: product.customFields,
                        stackable: "never"
                    });
                } catch (error) {
                    console.log(error);
                }
            });
        });
    });
EN

回答 1

Stack Overflow用户

发布于 2021-03-02 06:06:38

需要此代码来确保商品不会堆放在购物车中。在v3中,若要使该项不可堆叠,可以使用data-item-stackable属性设置为never。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66370068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档