vue双向绑定vuex中state的方法

vue双向绑定vuex中state

在组件中,有时候会用v-model绑定vuex中state里的变量到组件,这时候不能直接绑定,否则会报Computed property "XXX" was assigned to but it has no setter.的错误,如下图所示:


vue双向绑定vuex中state的方法


vue双向绑定vuex中state的方法


报错原因分析

组件中通常是这样绑定值的 v-model = 'XXX',但是‘XXX’是veux中state的变量。vuex是单向流,v-model='XXX‘是双向绑定;以上图中computed的...mapState只有get方法取值,没有set设值,所以报错。

解决方法

1.在computed中添加get和set方法

vue双向绑定vuex中state的方法


2.不需要添加get和set方法,把绑定的v-model改成:value


vue双向绑定vuex中state的方法


分享到:


相關文章: