actions vuex 请求_Vuex

初识vuex,觉得很是抽象, 根据系统分析学习后,自我理解(个人主见)

Vuex:其实本身Vuex可以看做是一个类似原型的样子,将很多可以共享的东西(按照项目需求),例如用户登录的状态等,而原型在个人看来,可能跟现在的云计算的“云”,有点相似,将开源的,共享的东西放到云上,可以去拿,也可以减轻本地服务器的压力;

首先,下载vuex这个插件,实例化缺不一定是vue,而是其中的store对象

const store=new Vuex.store({ ****** })

state----(引用)---->组件(组件可获取状态,最好不直接更改,直接更改vue插件查不到)

组件-------->(dispatch)----->Actions----(commit)------>Mutations----->state

Actions其实可以忽略,但是有异步操作,最好在Actions里做,主要Actions做发送网络请求

mutations一般就是相当于methods 一般有默认的参数就是state 可以不用this 参数就是state,拿数据,就是state.数值;而在相对应的组件里面,怎么拿到对应的vuex里面的Mutation?

也是事件方法里面 this.$store.commit("方法名")

如果mutation想传参,就是组件里面,传参,mutation接受

f5fe4f1cc8cd50c761bc92426ce99012.png

4962e3ee17a6015ababa9dbce7a14bb9.png

ps:用第二种方法提交风格就是一个对象

接下来就是Vuex的核心概念(state,getters,mutation,action,module)

单一数据源:意思就是最好只用一个store, 而不是每个组件用一个

getters(类似于计算属性):getters跟mutation一样,也有默认的参数state,

使用:$store.getters.名字

getters是可以嵌套的,第二参数可以是getters,可以拿前getters一个方法加以处理入

如果想自己传参,可以先return function(){}

Action 里面的默认参数缺不是state,而是context(可以理解为store对象)

ps:action只能发动异步操作,但是一定要用mutation来改值 context.commit("mutation里 的方法")

而组件发动异步请求,组件里面this.$store.dispatch("",可加参数)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值