我没有使用cube-ui实现菜单栏显示订购的数量但是有bug

来源:5-5 侧边栏内容定制化

lcyjerry

2020-06-09

这是计算菜单栏订购数量的计算属性
countAll() {
return function(index) {
let ret = [];
this.goods.forEach((good) => {
const { foods } = good;
let count = 0;
foods.forEach((food) => {
count += food.count || 0;
});
ret.push({ count });
});
this.count[index] = ret[index].count;
return ret[index].count;
};
},
},
我写了个vshow来判断是否显示或隐藏
v-show="count[index] > 0"
为什么只有到订购数量>=2的时候那个数字才会显示呢?

写回答

3回答

ustbhuangyi

2020-06-11

计算属性通常是一个函数内部返回一个值,而不是返回一个函数,你的用法很奇怪,这样改就行了

//img1.sycdn.imooc.com/szimg/5ee24e2f097185b414960936.jpg

把 count 定义成计算属性

然后模板这么用就行

//img.mukewang.com/szimg/5ee24e4d09ec448c19160386.jpg

0
2
ustbhuangyi
回复
lcyjerry
如果你在计算属性回调中又更新了计算属性依赖的数据,就会触发循环更新。
2020-06-12
共2条回复

ustbhuangyi

2020-06-10

//img.mukewang.com/szimg/5ee0eb93092b294910480726.jpg
我跑你的代码是 ok 的啊

0
3
lcyjerry
我上传到github了 老师 https://github.com/lcyjerry/Vue-sell/blob/master/src/components/goods/goods.vue
2020-06-11
共3条回复

ustbhuangyi

2020-06-10

你把代码传到 GitHub 上,我抽空帮你看看

0
3
lcyjerry
回复
ustbhuangyi
https://github.com/lcyjerry/Vue-sell/blob/master/src/components/goods/goods.vue 老师这是那个组件我已经上传了
2020-06-10
共3条回复

Vue.js2.5+cube-ui重构饿了么App(经典再升级)

掌握Vue1.0到2.0再到2.5最全版本应用与迭代,打造极致流畅的WebApp

9868 学习 · 4162 问题

查看课程