Typescript 介面,其中「id」必須是數字,其他屬性必須是字串
我需要為從伺服器來的資料定義一個介面,其中 id 是數字,但其他所有屬性都是字串。
我試過:
interface AnyChartsData {
id: number;
[key: string]: string;
}
但是我得到這個錯誤:
[ts] 型別為 'number' 的屬性 'id' 無法指派給字串索引型別 'string'。 [2411]
我該如何正確地定義這個介面?
答案#1
你必須使用聯合類型,因為 id 是數字而不是字串,例如。
interface AnyChartsData {
id: number;
[key: string]: string | number;
}
