Vuex Action中方法参数的约定
实例代码:
actions: { // 获取用户信息 getUserInfo({commit}) { return new Promise((resolve, reject) => { getUserInfo().then(user => { if (user.data.success) { commit('setUserName', user.data.data.realName) } resolve(user) }).catch(err => { reject(err) }) }) } }
讲解:
1.vuex中action方法区第一个参数是约定好的,第二个是用户自定义的(如果有)。第一个参数为:context,即:store的对象context,如果想限定只能使用context中的属性或者方法,则需要使用{}来限定,如:{commit}。
2.Promise可以将异步方法按一定的顺序执行,其自带2个参数。参数一:resolve正确返回后使用的参数,reject为异步函数调用失败后的调用参数。