Uni-app async结合await 将异步请求同步化
onLoad(){ this.setAreaList(); }, methods: { async setAreaList(){ //这里使用异步关键字 let area = await this.areaCache(); //这里使用了await 会等待areaCache这个方法返回数据后才会去执行下面的代码 console.log(area); } }
areaCache:function(){ return new Promise((res) => { try { const value = uni.getStorageSync('storage_area'); if (value) { res(value); }else{ uni.request({ url: url, data: {}, method:'GET', header: { 'Access-Control-Allow-Origin':'*' }, success: (result) => { try { uni.setStorageSync('storage_area', JSON.parse(result.data.items)); res(JSON.parse(result.data.items)); } catch (e) { // error } }, fail: (e) => { res(e); } }) } } catch (e) { // error } }) }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步