Vue.js 带v-if的Vue v-for

Vue.js 带v-if的Vue v-for,vue.js,vuejs2,Vue.js,Vuejs2,我发现Vue文档中存在一些不一致之处。如果有人澄清这一点,请。看着它,你会发现这样做很有用。就我而言,我正处于这种情况。但是现在eslint正在抱怨 所以我看了一下,它告诉我要避免这样。所以有一些明显的矛盾 问题:你应该避免它真的有那么糟糕吗 我的意见:我不认为它是坏的。我有很多这样有用的用例。方法1: 所有节点都将在每次项[]更改时呈现 <span v-for="item in items" v-if="item.shouldRender">...</span> 。。

我发现
Vue
文档中存在一些不一致之处。如果有人澄清这一点,请。看着它,你会发现这样做很有用。就我而言,我正处于这种情况。但是现在eslint正在抱怨

所以我看了一下,它告诉我要避免这样。所以有一些明显的矛盾

问题:你应该避免它真的有那么糟糕吗

我的意见:我不认为它是坏的。我有很多这样有用的用例。

方法1:

所有节点都将在每次项[]更改时呈现

<span v-for="item in items" v-if="item.shouldRender">...</span>
。。。

方式2:

所有节点将渲染一次

<template v-for="item in items">
    <span v-if="item.shouldRender">...</span>
</template>

...

方式3:

仅渲染过滤后的节点。过滤列表被缓存

<span v-for="item in computedShouldRenderItems">...</span>
。。。


我认为“方式一”并不是很糟糕。但是我更愿意避免它。

我想
v-for
v-if
避免与
eslint
无关吧?这只是一个指南,鼓励用户采用更好的方法,而不是试图将两个指令结合起来。另外,您的问题非常模糊:您能给我们一个示例,说明您希望如何同时使用这两个指令吗?否则,此问题将作为基于意见的问题结束。官方文件:Hi@Ric.H,这当然也是他们的一部分:为什么您更愿意避免选项1?1-文件不建议使用它。2-它更难阅读。3-不需要完全重新渲染。
{{index}
-您希望看到哪些索引?:)如果需要停止整个列表的呈现,但无法添加父级,该怎么办?你能简单地做到这一点(内联条件)<代码>它可以工作,但不确定使用它是否合适。