![](/img/trans.png)
[英]How do I type an object with known and unknown keys in TypeScript
[英]Typescript typing for known keys and unknown keys
我想聲明一個至少具有一些必需鍵的對象,而該對象也可能包含任何其他鍵。
例如,目標student
必須具有鍵name
和gender
,並且其他任何鍵都是可接受的。 如何聲明類型?
let student:{name:string, gender:string, ???};
//these must be valid
student = {
name:'Goku',
gender:'male',
power:'Super Saiyan'
}
student = {
name:'Pikachu',
gender:'unknown',
body:'yellow',
shoeSize:20
}
我幾乎沒有找到與此相關的任何教程,這似乎很少見,請問這是一個不好的做法嗎? 又為什么呢?
let student: {
name:string;
gender:string;
[key: string]: any;
};
// these are valid
student = {
name: 'Goku',
gender: 'male',
power: 'Super Saiyan'
};
student = {
name: 'Pikachu',
gender: 'unknown',
body: 'yellow',
shoeSize: 20
};
// this is invalid
student = {
body: 'yellow',
shoeSize: 20
};
也許用名稱和性別聲明一個接口。 然后使您的類成為實現該接口的“ Any”的子類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.