【发布时间】:2022-01-08 20:22:27
【问题描述】:
如何创建一个接口来根据在另一个对象中输入的键对对象进行类型检查。
例如:
const myObject = {
colors: {
black: '#000',
white: '#fff'
},
palette: {
primary: 'black',
secondary: 'orange' // <- should give an error because orange does not exist in colors object
}
};
【问题讨论】:
-
TypeScript 中没有以这种方式工作的特定接口。您可以使用this approach 并将您的对象类型表示为generic constraint,使用
asMyObject()辅助函数来推断泛型类型。这能满足你的需求吗?如果是这样,我可以写一个答案;如果没有,请告诉我我对您的用例缺少什么。
标签: typescript types typescript-generics type-inference