[英]prevent interface from having property with name X
我有这个界面:
interface Config {
height : number;
width : number;
[propName : string] : any;
}
如您所见,我有[propName : string] : any
允许我拥有任何其他属性,但我需要禁止使用 name key
属性。
换句话说,我想允许除key
任何其他属性
您可以添加一个额外的属性key?: undefined
到Config
:
interface Config {
height: number;
width: number;
key?: undefined; // add this line
[propName: string]: any;
}
const res1: Config = { height: 3, width: 4, me: "too" } // works
const res2: Config = { height: 3, width: 4, me: "too", key: "dsaf" } // error
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.