前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vuex之state

Vuex之state

作者头像
wade
发布2020-04-24 17:22:43
4560
发布2020-04-24 17:22:43
举报
文章被收录于专栏:coding个人笔记coding个人笔记

我们已经把vuex的结构给建起来了,那么我们怎么在各个组件中使用vuex的状态呢?那就是通过state。

我们都知道state是vuex的数据中心,那么我们页面可以直接使用,不管是标签还是js里面都可以这样使用:

this.$store.state.test

然后官网推荐从 store 实例中读取状态最简单的方法就是在计算属性中返回某个状态:

computed: { test () { return this.$store.state.test }}

然后就可以直接使用this.test了。

如果数据有点多,这样的计算属性书写会有点冗余,vuex提供了mapState辅助函数生成计算属性。

数组:

computed: mapState(['test','mapState'])

对象:

computed: mapState({ test: state => state.test, mapState: state => state.mapState,})

跟本地计算属性混合使用;

代码语言:javascript
复制
computed: {  
localComputed () {    
return '这是局部计算属性'  },  
...mapState(['test','mapState']),  
...mapState({      
test1: state => state.test + 'test1',      
mapState1: state => state.mapState + 'mapState1',    
}  )}

上面的几个方法不管是在标签还是js里面都可以直接通过this.调用相对应的数据。

还有一个最简单,但是不推荐使用的方法,直接赋值修改:

this.$store.state.test = '直接修改'

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 coding个人笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档