【第22-23周 04 3-8 VueX的语法】为什么this可以写成store

【第22-23周 04 3-8 VueX的语法】为什么this可以写成store

问题描述:

    1. 箭头处的store.commot(); 为什么可以不用this    还是this基础语法方面的问题


相关截图:

https://img1.sycdn.imooc.com//climg/6255324409e687bc13880830.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕慕子 2022-04-12 16:21:40

同学你好,与vuex的底层源码实现有关,语法中规定actions下的方法中的第一个参数对应的是store,所以可以不使用this,直接通过参数获取到store就可以了,代码即简单也易读。

祝学习愉快~

  • 提问者 easyschen #1

    不是vue底层的问题,是最最基础的this问题。

    是不是这里可以获取参数了,就可以不写this了。


    2022-04-12 16:31:38
  • 好帮手慕慕子 回复 提问者 easyschen #2

    对于你的问题解答如下:

    1、是的,可以获取参数,就可以不写this了,这跟个人书写代码的习惯有关,你要说你就是习惯书写this,那你就写this也是完全可以的,但大多数开发者都是直接使用提供的store参数(也是vuex官方推荐的写法)

    2、这里确实涉到vuex底层源码逻辑的实现,并不是最最基础的this问题。具体参考如下解析:

    (1)明明在dispatch触发change方法时,只传入了一个参数'hello world' 如下:

    https://img1.sycdn.imooc.com//climg/62553caf0929c0b110690412.jpg

    (2)那为什么actions下的change方法中,第一个参数表示store,之后的参数才对应传入的参数'hello world'呢?如下:

    https://img1.sycdn.imooc.com//climg/62553d0f09f69e5407950301.jpg

    就是因为vuex底层源码封装时进行了处理,所以actions下的方法才可以直接使用第一个参数来获取到store。

    祝学习愉快~

    2022-04-12 16:51:36
  • 提问者 easyschen 回复 好帮手慕慕子 #3

    ·感谢老师感谢老师,是我表述的有问题。 我是说我想问的是this的基础问题


    ·vue底层代码的问题我在另外一个回答中看到过了: 

    https://class.imooc.com/course/qadetail/307764


    ·非常感谢老师哈,我回去复习下this的相关内容。


    2022-04-12 17:00:31
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师