vuex中actions用法,vuex的actions的方法调用
本文主要介绍Vuex中getters和actions的补充,并做简要说明。有需要的朋友可以借鉴一下,希望能有所帮助,也祝大家进步多多。
前置说明
1.1之间的区别。Vue2.x和Vue3.x:
在Vue3.x中,没有辅助功能。
其他Vuex的使用没有区别。
2.这里只对Vuex的几个属性的使用进行扩展和补充。
getters补充
当在子模块中编写getters时,getters属性中的所有方法都有4个参数。
getters: {
/**
*形式参数的描述:
*状态:表示当前模块中的状态。
* getters:表示当前模块中的getters对象,该对象通常操作同一级别的其他方法。
* rootState:表示主模块的satate对象。
* rootGetters表示主模块的Getters对象。
*
*主模块是-index.js。
*/
getName(state,getters,rootState,rootGetters){
//使用说明
//状态,可以直接调用getters。
//rootstate .模块名.属性名
//rootGetters[该子模块下的模块名/getters方法名]
//除了state使用。调用,其他的都用[],符合命名约定。
},
.
}
actions补充
当在子模块中编写actions时,actions中的方法(第一个形式参数上下文对象)将有六个对象(还有其他属性,只向开发人员提供这六个对象)
定义
//子模块中的操作
动作:{
/**
*参数一:上下文是一个对象。如果当前动作在子模块中定义,
*将有以下六个对象供开发人员在上下文中使用。
*
* 1.提交:调用突变。
* (1).此模块调用:commit(此模块的突变方法的名称,参数)
* (2).其他模块调用:commit(模块名/其他模块的变量方法名,argument,{root:true}),
* {root:true}固定参数,表示作为主模块调用。
* 2.state:获取当前模块的状态。
* 3.分派:调用actions方法
* (1).此模块调用:dispatch(此模块的操作方法名称,实际参数)
* (2).调用其他模块:dispatch(模块名称/其他模块的操作方法名称,null,{root:true})
* 4.获取当前模块的获取器。
* 5.rootstate:主模块下的状态
* 6.rootGetters:主模块下的Getters
*
*参数2: value是在组件中调用时传递的参数。
*/
refreshUserName(上下文,值){
setTimeout(()={
Store.commit(突变方法名,参数值)
},2000)
}
}
调用(Vue3.x)
从“vuex”导入{useStore}
setup(){
const store=useStore()
//store===this。$store
Store.dispatch(模块名称/操作方法名称,参数值)
}
在开发中,如果要使用以上六个对象,必须通过上下文获取所需对象。你可以通过解构直接得到它们。
以下是官网的例子:
这就是关于在Vuex中使用getters和actions的补充说明的细节。更多关于Vuex中getters和actions的补充使用,请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。