等你,十一月的冷风款款如约而至,尽是点滴的韵致,点点滴滴都是我的凝眸。想你,十一月的叶落纷纷布满角落,全是颗粒的珠链,颗颗粒粒都是我的心忆。爱你,十一月的阳光惨惨敷在脸庞,满是残熠的余辉,残残熠熠都是我的思绪。
当v-if与v-for一起使用时,v-for具有比v-if更高的优先级,这意味着v-if将分别重复运行于每个v-for循环中
所以,不推荐v-if和v-for同时使用
使用推荐方式:
<ul> <li v-for="user in activeUsers" :key="user.id" > {{ user.name }} </li> </ul> <ul v-if="shouldShowUsers"> <li v-for="user in users" :key="user.id" > {{ user.name }} </li> </ul>
或者:放在计算属性遍历
computed: { activeUsers: function () { return this.users.filter(function (user) { return user.isActive }) } } <ul> <li v-for="user in activeUsers" :key="user.id" > {{ user.name }} </li> </ul>
当它们处于同一节点,v-for的优先级比v-if更高,这意味着v-if将分别重复运行于每个v-for循环中。当你想为仅有的一些项渲染节点时,这种优先级的机制会十分有用,如下:
<li v-for="todo in todos" v-if="!todo.isComplete"> {{ todo }} </li>
上面的代码只传递了未完成的 todos。
而如果你的目的是有条件地跳过循环的执行,那么可以将v-if置于外层元素 (或<template>)上。如:
<ul v-if="todos.length"> <li v-for="todo in todos"> {{ todo }} </li> </ul> <p v-else>No todos left!</p>
总结
以上所述是小编给大家介绍的vue的注意规范之v-if 与 v-for 一起使用好代码教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
到此这篇关于vue的注意规范之v-if 与 v-for 一起如何使用好代码教程就介绍到这了。生命本是一泓清泉,只有挑战自我的人才能品味出其中的甘洌;生命本是一部史书,只有挑战自我的人才能体味出其中的浩荡;生命就像一首优美的歌曲,只有挑战自我的人才能谱写出优美的旋律。更多相关vue的注意规范之v-if 与 v-for 一起如何使用好代码教程内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!