0%

Taro学习--解决在没有请求执行完就加载首页了的问题

常常有些业务我们要放在应用界面启动前处理

我们可以在app.jsx中,用promise 去控制请求,也可以加个启动页面去处理。
下面是一个利用 async/await 异步转同步的处理方式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
componentWillMount() {
this.initGlobalData()
}
initGlobalData = async () =>{
return new Promise(async (resolve) => {
const wxuid = await Taro.getStorageSync('wxuid')
const wxaid = await Taro.getStorageSync('wxaid')
const wxcid = await Taro.getStorageSync('wxcid')
if (wxuid){
setGlobalData('wxuid', wxuid)
}
if (wxaid){
setGlobalData('wxaid', wxaid)
}
if (wxcid){
setGlobalData('wxcid', wxcid)
}
let res = await Taro.login()
doSomething()
})
}