vue中mapState使用
时间: 2023-11-22 10:09:25 浏览: 90
解决Vue 给mapState中定义的属性赋值报错的问题
在Vue中,mapState是一个辅助函数,用于将store中的state映射到当前组件的computed计算属性中。
使用mapState的步骤如下:
1. 在组件中引入mapState函数:
```
import { mapState } from 'vuex'
```
2. 在计算属性中使用mapState函数映射store中的state:
```
computed: {
...mapState({
count: state => state.count
})
}
```
这里的count就是我们在组件中使用的计算属性名,state.count则是我们需要映射的store中的state。
如果我们需要映射多个state,可以传入一个数组:
```
computed: {
...mapState([
'count',
'message'
])
}
```
这样,我们就可以在组件中使用this.count和this.message来访问store中的state了。
需要注意的是,如果我们需要在计算属性中对state进行进一步处理,可以使用箭头函数:
```
computed: {
...mapState({
countPlusLocalState (state) {
return state.count + this.localCount
}
}),
localCount () {
return 1
}
}
```
这里的localCount是组件中的一个局部状态,我们可以在计算属性中使用它来对state进行进一步处理。
阅读全文