給出一個字符串類型:重新申報字符串字面類型
type Easing = "ease-in" | "ease-out" | "ease-in-out";
我可以添加更多的文字的類型已經宣佈後?即。而不涉及上述聲明(因爲它可能位於不屬於我的文件中)。
https://www.typescriptlang.org/docs/handbook/advanced-types.html
東西不起作用:
type Easing = "ease-in" | "ease-out" | "ease-in-out";
type Easing = Easing | 'uneasy'
或
type Easing = "ease-in" | "ease-out" | "ease-in-out";
type Easing |= 'uneasy'
或
type Easing = "ease-in" | "ease-out" | "ease-in-out";
type Easing = "ease-in" | "ease-out" | "ease-in-out" | 'uneasy';
所有這些都由於錯誤「重複標識符Easing」而失敗。「
如果不允許,爲什麼不呢?爲什麼是它允許做類似的枚舉?我不明白他們有什麼不同。
enum Easing {
EaseIn,
EaseOut,
EaseInOut
}
// works just fine
enum Easing {
Uneasy = 3
}
你應該給出一個你正在試圖解決的潛在問題的跡象。你所要求的具體事情不是解決任何問題的方法,而是許多問題的原因! –
這是一個問題的解決方案,認爲'不安'被認爲是'緩和'的無效值,儘管它可能對我正在做的事情有效。 TS不應該假裝比編寫它的人更瞭解代碼。 –
國際海事組織的字符串字面類型真的很擅長捕捉錯字,但我覺得應該有一種方式有意識地告訴打字稿「好吧,我知道我在做什麼,所以請讓我使用這個值」 –