VUEX中的actions中的函数是否能有返回值?

VUEX中的actions中的函数是否能有返回值?

新手误笑,刚接触VUEX没几天。
想做一个用户登录的功能,把登录成功的用户状态放到vuex中管理。
login.vue

<template>

<div id="login">

.....

<van-form @submit="onSubmit">

.....

<script>

....

methods: {

...mapActions('user',{'onSubmit':'Loginactions'}),

想在这里接收上面函数的返回值,根据返回值弹出用户登录结果信息给客户端

....

store/user.js

export default {

namespaced:true,

state:{

userinfo:'',

},

mutations:{

Loginmutations(state,data){

state.userinfo = data;

},

},

actions:{

Loginactions(contenxt,data){

axios.post('/api/user/login', params).then(function(res) {

if (res.data.code == 1) {

contenxt.commit("Loginmutations",res.data.data);

return 'ok';

}else{

return 'error';

}

});

}

}

}

不知道Loginactions能否有返回值?也不知道我这样的思路是否正确


回答:

actions 的返回值是 Promise,至于 Promise 里面再返回什么就随意了。

你的写法有问题,因为你没有 return,所以 .then() 里面的函数返回什么都不起作用。

以上是 VUEX中的actions中的函数是否能有返回值? 的全部内容, 来源链接: utcz.com/p/937096.html

回到顶部