跳至内容

v-if 与 v-for 的优先级
重大更改

概述

  • 重大更改: 如果在同一个元素上使用,v-if 的优先级将高于 v-for

介绍

Vue.js 中最常用的两个指令是 v-ifv-for。因此,开发人员想要将两者一起使用并不奇怪。虽然这不是推荐的做法,但可能有时需要这样做,因此我们想提供有关其工作原理的指导。

2.x 语法

在 2.x 中,当在同一个元素上使用 v-ifv-for 时,v-for 将具有更高的优先级。

3.x 语法

在 3.x 中,v-if 将始终具有比 v-for 更高的优先级。

迁移策略

由于语法歧义,建议避免在同一个元素上使用两者。

与其在模板级别管理它,不如创建一个计算属性来过滤掉可见元素的列表,这是一种实现此目的的方法。

迁移构建标志:COMPILER_V_IF_V_FOR_PRECEDENCE

另请参阅