Vuejs Computed 属性 警告我没有 setter

Vuejs Computed Property warns that I have no setter

我有这样的代码:

<button
  @click="addFieldRow"
  :disabled="disableAddRow"
>

disableAddRow 是这样计算的 属性:

disableAddRow() {
  if (this.currentIndex !== null) {
    return !this.fieldList[this.currentIndex].filterApplied;
  }
  if (this.currentIndex === null && this.fieldList.length === 1) {
    return true;
  }
  return false;
}

正常工作,但在我的控制台日志中,我收到以下警告:

[Vue warn]: Computed property "disableAddRow" was assigned to but it has no setter.

我不明白为什么我需要 setter?如果我确实需要 setter,我不明白我需要设置什么...

感谢您的宝贵时间和帮助!

该警告表明,在代码的某处,您正在为 disableAddRow 计算的 属性 分配一个值。

您共享的代码不会导致该警告,因此您一定是无意中在其他地方为它赋值。您只需要不设置计算 属性 的值,您就不会再收到该警告。


更多上下文:默认情况下,计算属性检索定义函数返回的值。但是,也可以定义 setters for computed properties(这是警告所暗示的内容)。