小程序模板網(wǎng)

[微信小程序] 終于可以愉快的使用 async/await 啦

發(fā)布時(shí)間:2018-04-08 11:54 所屬欄目:小程序開(kāi)發(fā)教程
本文作者:Emeryao,來(lái)自授權(quán)地址;作者曾在github上發(fā)布過(guò)幾個(gè)關(guān)于ts和vscode的微信小程序插件,底下有相關(guān)鏈接;

這篇文章主要是想說(shuō)一下 怎么在微信小程序中使用async/await從而逃離回調(diào)地獄

背景

最近一直在搞微信小程序 用的語(yǔ)言是TypeScript 小程序的api都是回調(diào)形式 用起來(lái)就是各種回調(diào)嵌套 我個(gè)人很不喜歡 所以一直想用async/await
之前用TypeScript target到ES2015 可以用async/await 但是在iphone上表現(xiàn)不好 后來(lái)微信開(kāi)發(fā)者工具的更新日志中又提到 移除了promise 開(kāi)發(fā)者需要自行引入 導(dǎo)致target到ES2015的async/await也不能用了
最近 TypeScript發(fā)布了2.1版本 從更新日志中看到 TypeScript2.1 增加了對(duì)ES5的async/await支持
經(jīng)過(guò)實(shí)踐 炒雞好用

原理

TypeScript會(huì)把所有async/await編譯成ES5支持的語(yǔ)法 target ES2015的時(shí)候是用yield實(shí)現(xiàn)的 到ES5則使用swicth case 實(shí)現(xiàn)的
然后在用到async/await的文件中引入Promise polyfill 微信小程序就可以正常的工作了

準(zhǔn)備

重點(diǎn)



本文地址:http://www.u-renovate.com/wxmini/doc/course/23152.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢(xún):800182392 點(diǎn)擊咨詢(xún)
QQ在線咨詢(xún)