现有两个组件,组件a需要请求数据并通过vuex保存在store中,当组件b请求数据时需要用到之前保存在store中的数据,但此时组件a请求的的是数据还没有保存好
请问这种情况该如何处理?
现有两个组件,组件a需要请求数据并通过vuex保存在store中,当组件b请求数据时需要用到之前保存在store中的数据,但此时组件a请求的的是数据还没有保存好
请问这种情况该如何处理?
如果是两个组件的请求,那可能需要到组件间的通信了,在组件a请求完毕储存数据之后通过$emit
通知组件b,组件b再发起请求.
ps: 既然用到vuex了为什么还要去local Storage里面的数据?
楼上正解利用promise的特性附上代码
// 注:api.mineBaseMsgApi()是我封装的基于axios的请求方法
getData({commit}, params) {
return new Promise((resolve, reject) => {
api.mineBaseMsgApi('url' + userId)
.then(res => {
commit('montations', res.result)
resolve(res)
})
.catch(error => {
reject(error)
})
})
}
6 回答3k 阅读✓ 已解决
6 回答2.4k 阅读
5 回答6.4k 阅读✓ 已解决
2 回答2k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
2 回答988 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
中间加一个变量,从vuex里面拿值,然后在watch里面监听一下,监听到好了就在去请求第二个接口呗