vue3面试题:v-if 和 v-for 的优先级哪个高?
在 vue2 中v-for
的优先级更高,但是在 vue3 中优先级改变了。v-if
的优先级更高。
在 vue2 中v-for
和v-if
同时出现时,可放在一个标签内,如下写法:
<div v-for="item in data" v-if
="item.show" :key="item.id"> {{ item.show }} </div>
data(){
return{
data:[
{ id: 1, show: true, name: '小米' },
{ id: 2, show: false, name: '小花' },
{ id: 3, show: true, name: '小南' },
]
}
}
在 vue3 中这样写会报错,就是因为 v-if
的优先级更高,所以 item.show 是未定义报错了。