NPM酷库,天天两分钟,相识一个盛行NPM库。
昨天我们相识了怎样运用Promise治理异步使命,然则ES2015规范的Promise对象完成的接口异常有限,只包括 Promise.all()
Promise.race()
promise.then()
promise.catch()
,这些接口在实际运用中是不够用的,比方我们没办法直接推断一个Promise对象是不是已完成。
q
q是一个Promise完成库,而且相对于ES2015规范,q供应了许多有效的东西函数。下面我们就枚举一些异常有效的函数:
推断Promise状况
promise.isFulfilled()
promise.isRejected()
promise.isPending()
promise.finally(callback)
Promise终究完成后挪用,不管是不是失利,注重,ES2016 规范的Promise存在此函数,然则Edge等一些浏览器并未完成此函数。
promise.timeout(ms,message)
异步处置惩罚超时设置
promise.delay(ms)
延时实行
其他关于返回值的东西函数
比方 promise.get(propertyName)
的作用是猎取Promise返回对象的某个属性,作用等同于:
promise.then(function (o) {
return o[propertyName];
});
这类函数有许多,详细能够检察API文档。
参考资料
https://github.com/kriskowal/q
https://github.com/kriskowal/…