[英]How to manage multiple function return types in Typescript?
我有如下方法:
abstract canDeactivate() : boolean | Promise<boolean>;
如何在調用方中管理方法的promise實現和布爾實現?
您需要使用類型防護來區分這兩種情況:
abstract class Target {
abstract canDeactivate() : boolean | Promise<boolean>;
}
declare let t: Target
var r = t.canDeactivate();
if (typeof r === 'boolean') { // type guard
r // boolean
} else {
r.then(v=> v)// r is Promise<bool>
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.