小程序模板網(wǎng)

小程序使用 async await

發(fā)布時間:2018-12-19 09:11 所屬欄目:小程序開發(fā)教程
實踐的方式如下:
第一個問題: 雖然小程序不支持,但是我們可以引入js庫啊。雙手奉上facebook的開源庫regenerator 下載'packages/regenerator-runtime'這個路徑下的runtime.js,放到自己小程序項目下的utils或者lib文件夾下。
 
第二個問題: Async跟Await的用法
 
Async - 定義異步函數(shù)(async function someName(){...})
 
自動把函數(shù)轉(zhuǎn)換為 Promise
當(dāng)調(diào)用異步函數(shù)時,函數(shù)返回值會被 resolve 處理
異步函數(shù)內(nèi)部可以使用 await
Await - 暫停異步函數(shù)的執(zhí)行 (var result = await someAsyncCall();)
 
當(dāng)使用在 Promise 前面時,await 等待 Promise 完成,并返回 Promise 的結(jié)果
await 只能和 Promise 一起使用,不能和 callback 一起使用
await 只能用在 async 函數(shù)中
 
import regeneratorRuntime from '../../utils/runtime.js'

onLoad: function() {
    this.initData();
  },

  async initData(){
await this.initMyData();//請求接口1
await this.initTodayData();//請求接口2
  }

  initMyData:function(){
console.log('開始請求1')
........
//回調(diào)函數(shù)的方法內(nèi)寫
console.log("完成請求1")


}

  initTodayData:function(){
console.log('開始請求2')
........
//回調(diào)函數(shù)的方法內(nèi)寫
console.log("完成請求2")
}


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://22321a.com/wxmini/doc/course/25026.html 復(fù)制鏈接 如需定制請聯(lián)系易優(yōu)客服咨詢:800182392 點擊咨詢
QQ在線咨詢