异步dispatch怎么做?
mounted里面执行dispatch之后,又在下面的mounted里面执行某个方法,此方法里面有从dispatch里面改变的值,这个值拿不到怎么处理,因为dispatch是异步,怎么变为同步initmap函数里面的scjydzjd和scjydzwd是执行dispatch之后才有的,此时拿不到这两个数,怎么才能实现:dispatch之后直接拿到这两个数
回答:
dispatch
返回的是 Promise
,所以你在 action
里返回值,在 dispatch
的地方用 .then()
或者异步函数都可以。
大概如此:
actions.js
export default { getData({commit}, payload) {
return api.fetch('...');
}
}
my-component.vue
export default { async mounted() {
const data = await this.dispatch('getData', params);
}
}
回答:
dispatch返回Promise,.then里面取咯
以上是 异步dispatch怎么做? 的全部内容, 来源链接: utcz.com/p/932931.html