我有下面的代码。
data():{
coor: [
{ "name": '',
"shoes": '' },
{ "name": '',
"shoes": '' }
]
watch:{
coor: {
handler(){
console.log('changed')
}
,deep: true
}
}
在这种情况下,如果更改了coor中的任何一个值,则手表将起作用。
但我的目标是我想将案例一分为二,如下所示。
watch:{
coor.name: {
handler(){
console.log('The name is changed')
}
,deep: true
},
coor.shoes: {
handler(){
console.log('The shoes are changed')
}
,deep: true
}
}
但是它不能很好地工作。我怎么解决这个问题?非常感谢您的阅读。
最佳答案
创建要观看的商品的计算属性,然后观看。
computed {
filteredAny(){
return this.coor;
// you can also use map here and combine values to create a key.
// return this.coor.map(it=>it.shoes+':'+it.name)
},
filteredShoes(){
return this.coor.map(it=>it.shoes);
},
filteredName(){
return this.coor.map(it=>it.name);
}
}
watch {
// deep not needed.
filteredShoes(){
console.log('The shoes are changed');
}
}
关于javascript - 如何在Vuejs中的同一数组中观看其他键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58039474/