本文实例为大家分享了vuex实现购物车功能的具体代码,供大家参考,具体内容如下
页面布局:
采用了element-ui的表格对商品列表和购物车列表进行布局
1、商品列表
{{ scope.row.id }} {{ scope.row.name }}
{{ scope.row.name }} {{ scope.row.price }}
{{ scope.row.price }} 添加
shopList数据:
//模拟商品列表数据
shop_list: [{
id: 11,
name: '鱼香肉丝',
price: 12,
}, {
id: 22,
name: '宫保鸡丁',
price: 14
}, {
id: 34,
name: '土豆丝',
price: 10
}, {
id: 47,
name: '米饭',
price: 2
},{
id: 49,
name: '蚂蚁上树',
price: 13
},
{
id: 50,
name: '腊肉炒蒜薹',
price: 15
}],
购物车列表
因为我们还没添加商品,所以购物车为空
现在用vuex编写功能函数
在store.js中
在state中:定义两个变量,分别是商品列表,购物车列表,购物车开始为空
在getters中
有四个计算变量,分别是商品列表,购物车列表、购物车商品总数量和总价格的实时更新
在mutations中:
addCart:如果商品已经添加过了就无须添加,只对其数量增加
在actions中:
完整代码
shop-list.vue页面
{{ scope.row.id }} {{ scope.row.name }}
{{ scope.row.name }} {{ scope.row.price }}
{{ scope.row.price }} 添加 .shop-list { width: 500px; }
shop-cart.vue页面
总数量{{totalNum}} 总价格{{totalPrice}}
{{ scope.row.id }} {{ scope.row.name }}
{{ scope.row.name }} {{ scope.row.price }}
{{ scope.row.price }} - {{scope.row.num}}+ 删除 清空购物车 .shop-list { width: 500px; margin-top: 20px } #num{ margin: 0 10px } .total{ margin-top: 30px; text-align: center; span{ margin-right: 20px } }
App.vue
关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



