浅谈v-for 和 v-if 并用时筛选条件方法

说了一千句一万句壮志豪言,不行动你还是碌碌无为;如果你行动了,哪怕只是一个小小的动作,你就有可能解决了温饱大计。

如下所示:

<ul id="ul">
<li v-for="todo in todos" v-if="todo<4">
 {{ todo }}
</li>
 
</ul>
 
<script> 
 
varvm=new Vue({
el:"#ul",
data:{
 todos: [ 1, 2, 3, 4, 5 ]
}
})
 
</script>

说明:在处于同一节点的时候,v-for 优先级比 v-if 高。先运行v-for 的循环,然后在每一个v-for 的循环中,再进行 v-if 的条件对比。

v-if="todo<4" 会筛选 符合 <4 的 todo 项

而如果你的目的是有条件地跳过循环的执行,那么可以将 v-if 置于外层元素 (或 <template>)上。如:

<ul id="ul" v-if="todos.length">
<li v-for="todo in todos">
 {{ todo }}
</li>
<p v-else>
no todo left!
</p>
</ul>
 
 
<script> 
 
varvm=new Vue({
el:"#ul",
data:{
 todos: [ 1, 2, 3, 4, 5 ]
   }
})
 
</script>

以上这篇浅谈v-for 和 v-if 并用时筛选条件方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
Vue路由参数的传递与获取方式详细介绍

vue学习记录之动态组件浅析

如何解决ElementUI组件中el-upload上传图片不显示问题

解读element el-upload上传的附件名称不显示 file-list赋值

一篇关于el-table-column的formatter的如何使用及说明