1
我在原來的TS文件(foo.ts
),我有這樣的:打字稿編譯器完成操作打字稿枚舉編譯到兩個d.ts和Javascript輸出
export const enum ACCESS_STATE {
master,
readonly,
none,
failed
}
後,輸出(foo.d.ts
)文件中正確包含此:
const enum ACCESS_STATE {
master = 0,
readonly = 1,
none = 2,
failed = 3,
}
然而,得到的輸出(foo.js
)文件沒有提及ACCESS_STATE
或其值在所有。這在foo.js
中並不是問題,因爲編譯器會正確替換ACCESS_STATE.master
以及其他引用的硬值0(等)。
問題是,我有其他javascript模塊,需要富,並希望重用該枚舉。
是否有可能讓編譯器在foo.js
中生成可引用且可用的內容?如:
var ACCESS_STATE = (function() {
function ACCESS_STATE() {
this.master = 0;
this.readonly = 1;
this.none = 2;
this.failed = 3
}
return ACCESS_STATE ;
}());
foo.ACCESS_STATE = ACCESS_STATE ;
爲什麼這不是編譯器的默認行爲生成可重複使用的那種東西,可以在枚舉值的參考替代品(這是通常通過使用意枚舉)?
我刪除了'const'關鍵字,它適用於我的情況。感謝您提供可能的解決方案。 –