0
有沒有一種方法來同時使用強類型索引訪問器和訪問屬性,而不重複類型註釋中的屬性?Typescript - 屬性和索引訪問器在同一時間
let profile = profiles[profileKey];
let profile = profiles.ADMIN;
我有這樣定義的鍵值對詞典:
const profiles = {
"ADMIN": "Admin",
"TCA": "Test Center Admin",
"TT": "Test Taker",
};
現在型材常量的性質infered和我可以寫let admin = profiles.ADMIN
。
但爲了使用索引acessor我必須明確地指定它:
const profiles: {[profileKey: string]: string} = {
"ADMIN": "Admin",
"TCA": "Test Center Admin",
"TT": "Test Taker",
};
不過,現在我不能訪問性能。
我知道我可以定義在profiles`類型標註的所有屬性:
interface IProfiles {
[profileKey: string]: string;
ADMIN: string,
TCA: string,
TT: string,
}
但這只是在重複自己。可以推斷屬性,就像我沒有指定任何註釋一樣。這可能嗎?
我並不期望推斷profileKey的可擴展值,但可能的屬性('profiles.ADMIN','profiles.TCA'和' profiles.TT')。只要我沒有指定索引存取器,我可以使用這些屬性。 – Liero