编辑
2023-04-13
Vuex-Version3
0
请注意,本文编写于 611 天前,最后修改于 569 天前,其中某些信息可能已经过时。

目录

action
说明
使用步骤
1. 设置actions
2.分发action
执行流程说明
Eg

action

说明

Action类似于mutation,不同在于:

  • Action提交的是mutation,然后通过store.dispatch方法触发commit变更状态,而不是直接变更状态
  • Action 可以包含任意异步操作

作用: mutations只写同步操作,不写异步操作,而action则是解决方案 Eg axios获取到结果,然后then中更改数据为请求结果 此时就无法写

使用步骤

1. 设置actions

actions: { fnname(context,payload){ //异步操作 axios.get().then((res)=>{ context.commit({type:"add",res,payload}) }) } },

Action函数接受一个与 store 实例具有相同方法和属性的 context对象,因此可以调用context.commit提交一个 mutation,或者通过context.state和context.getters 来获取state和getters

2.分发action

action通过store.dispatch()方法触发

this.$store.dispatch('fnname',params);

执行流程说明

首先配置actions,然后组件通过dispatch方法触发actions,actions中的异步操作执行再将异步结果通过commit参数传递进去

Eg

actions

本文作者:RKLS

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!