跳至内容

vue/valid-v-model

强制执行有效的 v-model 指令

  • ⚙️ 此规则包含在所有 "plugin:vue/vue3-essential"*.configs["flat/essential"]"plugin:vue/essential"*.configs["flat/vue2-essential"]"plugin:vue/vue3-strongly-recommended"*.configs["flat/strongly-recommended"]"plugin:vue/strongly-recommended"*.configs["flat/vue2-strongly-recommended"]"plugin:vue/vue3-recommended"*.configs["flat/recommended"]"plugin:vue/recommended"*.configs["flat/vue2-recommended"] 中。

此规则检查每个 v-model 指令是否有效。

📖 规则详情

此规则在以下情况下报告 v-model 指令

  • 在 HTMLElement 上使用的指令带有参数。例如 <input v-model:aaa="foo">
  • 在 HTMLElement 上使用的指令带有不受支持的修饰符。例如 <input v-model.bbb="foo">
  • 指令没有该属性值。例如 <input v-model>
  • 指令没有作为 LHS 有效的属性值。例如 <input v-model="foo() + bar()"><input v-model="a?.b">
  • 指令具有潜在的空对象属性访问。例如 <input v-model="(a?.b).c">
  • 指令位于不受支持的元素上。例如 <div v-model="foo"></div>
  • 指令位于类型为 file<input> 元素上。例如 <input type="file" v-model="foo">
  • 指令的引用是迭代变量。例如 <div v-for="x in list"><input type="file" v-model="x"></div>
正在加载...

注意

此规则不检查指令中的语法错误,因为这是由 vue/no-parsing-error 规则检查的。

🔧 选项

无。

🚀 版本

此规则是在 eslint-plugin-vue v3.11.0 中引入的

🔍 实现