更新记录

1.6.2(2024-09-12) 下载此版本

  • 优化小程序版本 数据不同步

1.6.0(2023-04-03) 下载此版本

升级为 uni_modules 插件


平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
× × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

使用组件

<yszyun-shopcart :goods="gooods"   @add="addCart" @dec="decreaseCart" @input="inputCart" @delAll="delAll"></yszyun-shopcart>

相关的方法

addCart(val) {
    let list = {};
    const index = this.copyGoods.findIndex((item) => {
        list = item.foods.find((item) => item.name === val.name);
        if (list) return list;
    });
    const goods = JSON.parse(JSON.stringify(this.copyGoods));
    if (val.count >= 0) {
        goods[index].foods.forEach((item) => {
            if (item.name === val.name) {
                goods[index].count++;
                item.count++;
            }
        });
    } else {
        goods[index].foods.forEach((item) => {
            if (item.name === val.name) {
                if (goods[index].count === undefined) {
                    goods[index].count = 1;
                } else {
                    goods[index].count++;
                }
                this.$set(item, 'count', 1);
            }
        });
    }
    this.$emit('handleChange', goods);
},
decreaseCart(val) {
    let list = {};
    const index = this.copyGoods.findIndex((item) => {
        list = item.foods.find((item) => item.name === val.name);
        if (list) return list;
    });
    const goods = JSON.parse(JSON.stringify(this.copyGoods));
    if (val.count) {
        goods[index].foods.forEach((item) => {
            if (item.name === val.name) {
                goods[index].count--;
                item.count--;
            }
        });
    }
    this.$emit('handleChange', goods);
},
inputCart(val) {
    let list = {};
    const index = this.copyGoods.findIndex((item) => {
        list = item.foods.find((item) => item.name === val.name);
        if (list) return list;
    });
    const goods = JSON.parse(JSON.stringify(this.copyGoods));
    if (val.count >= 0) {
        goods[index].count = 0;
        goods[index].foods.forEach((item) => {
            if (item.name === val.name) {
                //console.log(val.count);
                item.count = +val.count;
            }
            if (item.count) {
                goods[index].count += item.count;
            }
        });
    }
    this.$emit('handleChange', goods);
},
// 清空购物车
delAll() {
    const goods = JSON.parse(JSON.stringify(this.copyGoods));
    goods.forEach((good) => {
        good.count = 0;
        good.foods.forEach((food) => {
            if (food.count) {
                food.count = 0;
            }
        });
    });
    this.$emit('handleChange', goods);
}

goods示例

            goods: [
    {
        name: '热销',
        foods: [
            {
                name: '南瓜粥',
                price: 9.22,
                description: '食材:大米,南瓜',
                sellCount: 229,
                img: '/uni_modules/yszyun-shopcart/static/nanguaz.jpg'
            },
            {
                name: '小米粥',
                price: 9.8,
                description: '食材:小米',
                sellCount: 239,
                img: '/uni_modules/yszyun-shopcart/static/xiaomi.jpg'
            },
            {
                name: '油条',
                price: 1.88,
                description: '食材:油条',
                sellCount: 229,
                img: '/uni_modules/yszyun-shopcart/static/youtiao.jpg'
            }
        ]
    },
    {
        name: '折扣',
        foods: [
            {
                name: '油条1只',
                price: 1.88,
                description: '食材:油条',
                sellCount: 229,
                img: '/uni_modules/yszyun-shopcart/static/youtiao.jpg'
            },
            {
                name: '艇仔粥',
                price: 9.9,
                description: '食材:瘦肉,干贝,花生等',
                sellCount: 239,
                img: '/uni_modules/yszyun-shopcart/static/tingzaiz.jpg'
            }
        ]
    }
]

更新记录

1.6.2 版本 优化小程序版本 数据不同步

1.6 版本 升级为 uni_modules 插件
1.5版本 1.增加左边二级联动菜单
1.4版本 1.增加结算按钮
1.3版本 1.增加数量编辑

说明:目前支持平台有APP、微信小程序、H5,其他平台理论上支持。

扫码添加技术微信支持,备注说明对应的插件名称

详情咨询电话: 400-008-1668

邮箱:marketing@yszyun.com

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问