[英]How to easily make asyn/await works with the traditional callback function in js
眾所周知,ES6 給了我們一個很好的回調地獄的解決方案,但是如何處理已經寫好的帶有回調的源代碼呢? 我不想重寫那些代碼,只想找到一種簡單的方法來讓它工作。
輔助功能
function promise(this_obj, func, ...restArgs) { return new Promise((resolve, reject) => { restArgs.push((err,result)=>{ if(err){ reject(err); }else{解決(結果);}});func.apply(this_obj,restArgs);}); }
前
redis.hget("k1", "k2", function (err, result) { if (err) { reject(err); } else { resolve(result); } });
現在
var result = await promise(redis, redis.hget, "k1", "k2");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.