簡體   English   中英

typescript 使用文字 | string 給出類型為字符串

[英]typescript use literals | string gives type as string

我正在編寫一個庫,我有一個 object,我想讓這個庫的用戶在它的一個屬性上自動完成,但是我希望他們也能夠添加其他字符串,我的類型是:

type Object2 = {
    prop: "*" | "line" | "media" | string;
}

在我的 IDE (Intellij)上並編譯 output 我得到:

Object2: {
    prop: string;
};

然而,我需要得到的與我定義的"*" | "line" | "media" | string相同。 "*" | "line" | "media" | string "*" | "line" | "media" | string所以我該怎么辦我真的被困在這里

所有字符串文字類型都被吸收到string中,因為string是這些文字類型的基本類型。

有一種方法可以防止這種情況,但將string{}相交

type Object2 = {
    prop: "*" | "line" | "media" | (string & {});
}

游樂場鏈接

任何字符串仍可分配給道具,但您會在 VS Code 中獲得建議。

這將在此處討論。 那里還建議使用&{}解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM