这里的计算属性是需要根据路由的参数来过滤一下,但是过滤后的result数组应该已经和this.list没有关系了,所以失去的双向绑定的功能,求助有什么好点方案来解决这个问题吗?
export default{
data(){
return {
currentCate: null,
list: Store.fetch()
}
},
watch: {
'$route' (to, from) {
this.updataCate();
}
},
created(){
this.updataCate();
},
computed: {
viewData(){
let result = [];
this.list.forEach((item, index) => {
if(item.cate && item.cate == this.currentCate){
result.push(item);
}
});
return result;
}
},
methods: {
updataCate(){
this.currentCate = this.$route.params.cate;
},
toggleCompleted(item){
// var index = this.items.indexOf(item)
// console.log(index);
item.completed = !item.completed;
}
}
}
用计算属性的 set 方法
http://vuejs.org/v2/guide/com...
虽然不知道具体的业务逻辑是什么,不过,数据处理完之后有向后端提交吗?如果有提交那没问题吧,如果不提交,数据双向绑定也没有意义吧?