本文整理匯總了TypeScript中vs/base/common/async.isThenable函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript isThenable函數的具體用法?TypeScript isThenable怎麽用?TypeScript isThenable使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了isThenable函數的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: handleVetos
export function handleVetos(vetos: (boolean | Thenable<boolean>)[], onError: (error: Error) => void): TPromise<boolean /* veto */> {
if (vetos.length === 0) {
return TPromise.as(false);
}
const promises: Thenable<void>[] = [];
let lazyValue = false;
for (let valueOrPromise of vetos) {
// veto, done
if (valueOrPromise === true) {
return TPromise.as(true);
}
if (isThenable(valueOrPromise)) {
promises.push(valueOrPromise.then(value => {
if (value) {
lazyValue = true; // veto, done
}
}, err => {
onError(err); // error, treated like a veto, done
lazyValue = true;
}));
}
}
return TPromise.join(promises).then(() => lazyValue);
}
示例2: isWinJSPromise
function isWinJSPromise(candidate: any): candidate is WinJSPromise {
return isThenable(candidate) && typeof (candidate as any).done === 'function';
}