VueJS - Computed属性没有setter (但实际上有)

我有一个名为Wrapper的组件,它包装了另一个第三方组件。它看起来是这样的:

<template>
  <custom-element
    v-model="computedProperty"
  >
  </custom-element>
</template>

<script>
export default {
  props: {
    modelName: String
  },
  computed: {
    computedProperty() {
      return this[this.modelName]
    },
    foo: {
      get() {
        // getter logic
      },
      set(value) {
        // setter logic
      }
    }
  }
}
</script>

当使用这个元素和代码<wrapper modelName="foo" />时,我得到了这个vue警告Computed property "computedProperty" was assigned to but it has no setter.computedProperty没有设置器是正确的,但是当使用modelName设置为foo的组件时,它实际上应该接受foo属性的设置器。这是不可能的吗?

转载请注明出处:http://www.intsu.net/article/20230526/2479827.html