vue3中如何使用 mapState

直接看代码     (最后有封装好的hook直接用即可)

 我们来看:28行就是一个一个拿,当然会这个一个一个拿也完全没问题,能够实现

不过我数据多的时候,很繁琐,所有我们要借助mapState来映射 下面我们开始:

首先利用mapState拿到所有数据,当然,这样拿到的是一个一个的函数,这样是不行的

 拿到的格式大概就是31行这样

 那么我们要把这个函数转变成值

33行,我们声明一个空对象,用于存储下面的数据

接下来34行 利用Object上的keys,拿到我们30行对应的key,用forEach遍历,

35行 这个看相信大家都不太懂,,35行相当于 this.$store.state.name等 ,

首先为什么要这个做,因为setup中没有this,我们必须遍历每个对象,然后给他们绑定this,

35行最后,利用bind绑定this 

然后把拿到的值存到33行定义好的对象里面 

  看到这里还不明白的话,下面给大家解释一下

...mapState(["name","age"])

这个实现的方式其实解释

this.$store.state.name

this.$store.state.age

所有我们上面需要遍历来绑定this   注意我们上面35行就是30行的mapState赋值的

 当然到这里了还是不会,没关系,我已经给大家封装好了hook 以后直接调用就OK了

 直接用

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学无止境s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值