前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vuex中的state访问状态对象

Vuex中的state访问状态对象

原创
作者头像
wust小吴
修改2019-12-27 18:32:24
3.1K0
修改2019-12-27 18:32:24
举报
文章被收录于专栏:风吹杨柳风吹杨柳

state ,这个就是我们说的访问状态对象,它就是我们SPA(单页应用程序)中的共享值。

如何把状态对象赋值给内部对象,也就是把stroe.js中的值,赋值给我们模板里data中的值。

我们有三种赋值方式。

一、通过computed的计算属性直接赋值

computed属性可以在输出前,对data中的值进行改变,我们就利用这种特性把store.js中的state值赋值给我们模板中的data值。

例如:实现顶栏标题文字改变。

```

computed:{

count: function () {

return this.$store.state.count

}

}

```

注意:return this.$store.state.count这一句,一定要写this,要不你会找不到$store的。

这种写法很好理解,但是写起来是比较麻烦的,那我们来看看第二种写法。

二、通过mapState的对象来赋值

1.首先要用import引入mapState

```

import {mapState} from 'vuex'

```

2.还在computed计算属性里写如下代码:

```

computed:mapState({

count:state=>state.count

})

// computed: mapState({

// // ①ES5写法

// // count: function (state) {

// // return state.count

// // }

// // ②ES6写法(箭头函数)

// count: state => state.count

// })

```

三、通过mapState的数组来赋值

1.首先要用import引入mapState

```

import {mapState} from 'vuex'

```

2.还在computed计算属性里写如下代码:

```

computed: mapState(['count'])

```

这个算是最简单的写法了,在实际项目开发当中也经常这样使用。

uni-app中这么用:

1.import

```

import {

mapState

} from 'vuex';

```

2.

```

computed: {

...mapState(['hasLogin'])

},

```

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

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