【发布时间】:2022-07-14 13:59:21
【问题描述】:
在 Vue 3 中,以下代码行会产生错误:
<input v-model="modelValue[idx].name" v-for="(item, idx) in modelValue" :key="idx">
错误如下:
error Unexpected mutation of "modelValue" prop vue/no-mutating-props
这是有道理的,因为修改属性值被认为是一种反模式: https://v2.vuejs.org/v2/guide/migration.html#Prop-Mutation-deprecated
然而,以下代码行编译并运行良好:
<input v-model="item.name" v-for="(item, idx) in modelValue" :key="idx">
我仍然修改同一个对象,唯一的区别是我间接引用它。这可以吗,或者这是 linter 未能检测到的反模式?
【问题讨论】:
标签: vue.js