[英]Typescript type alias for enum
我的打字文件中有這個:
declare namespace Somatic {
enum PropType {
html,
object,
css
}
}
在另一個文件 index.ts 中,我有一個較短的枚舉別名:
type PropType = Somatic.PropType;
然后我想在 switch 語句中使用別名枚舉類型:
switch (propType) {
case PropType.html:
break;
.
.
.
}
但是 Typescript 無法識別別名枚舉類型值。 這里有什么問題?
在打字稿中,枚舉既是類型又是映射。 您應該分別為類型和地圖設置別名:
type PropTypeEnum = Somatic.PropType;
const PropType = Somatic.PropType;
基本上,定義文件只是聲明現有其他代碼的類型。 TypeScript 中的枚舉實際上是數字,並且您在其上構建的現有代碼很可能不使用實際數字。 更好的實現可能是只切換字符串;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.