onMounted第一次打开执行,
onActivated跳转到这个页面执行,
有一种情况,项目第一个打开,从别到页面跳转到这个页面时onMounted和onActivated会都执行,这时就会有一个问题,onMounted中的可能耗时长的会在onActivated执行时才执行完成,这时就出现了问题。这个问题怎么解决?
onActivated(async ()=>{
})
onMounted(async ()=>{
console.log('onMounted开始')
await getPayType()
await defaultDate()
await getData()
console.log("onMounted结束")
})
那你就把 onMounted 里的逻辑抽出来变成一个 Promise 就好了。
P.S. 要是觉得这么写不够优雅那就上 RxJS 的 Observable 解耦。本质是一样的。