vue
在2.4.2
版本中给computed
里的属性加了限制,详见- 项目将vue升级之后,配合vux官网的代码,会报错
[Vue warn]: Computed property "isLoading" was assigned to but it has no setter.
- 在里问了一下,是因为
Loading
组件绑定值的时候用的v-model
导致的,改成:value="isLoading"
那个warn就不会出现了。 - 想了一下这个Loading组件的作用,又看了一下,我认为Loading组件的这个是否显示的属性不需要用v-model绑定
- 用v-model来实现数据的双向绑定,在Loading这个组件里,没看到什么用处,是否还有别的场景会需要用v-model来实现呢?
这是不得已为之,vue2 废弃了 sync,只有 v-model 才能直接实现双向绑定,而 2.3 又把 sync 放回来,2.4 加了进一步的限制。所以这里组件代码又要改了。使用 v-model 在当时是为了统一绑定方式预留可能存在的内部状态更改实现的可能性。
来源于:https://github.com/airyland/vux/issues/1798