碰到这个问题是在nuxt框架的nuxtServerInit里,用于服务端渲染,在这个方法会在服务端阻塞,等待返回promise时执行,我想在这个方法里有序的执行多个promise,因为其他的promise要基于某一个的promise返回值,用then()调用的时候这里的阻塞不会等待到then里面的执行完毕,用promise.all的话又不能保证执行循序,求解
// 请把代码文本粘贴到下方(请勿用图片代替代码)
nuxtServerInit(store, { params, route, req }) {//在服务端只会阻塞到返回promise
const initData = [
store.dispatch('getToken'),//这个执行完后会拿到一个token,store.dispatch('getLawyerByIndex')//这个必须基于上面的token去执行]
return Promise.all(initData)
}
链式调用的话只能拿到'getToken',不会拿到'getLawyerByIndex',用promise.all是可以拿到 但是执行循序没有保证的
智慧大石
梵蒂冈之花
随时随地看视频慕课网APP
相关分类