打字稿:如何为对象类型的键值对定义接口
Typescript: How do I define an interface for an object type's key value pair
我有一个名为 externalObject
的对象,它有多个 key:value 对。
我还有一个打字稿接口,定义如下:
interface TestObject{
externalObject?: {}
}
我的问题是如何进一步将 externalObject 的键的类型设置为字符串,并将在 externalObject 内部传递的值设置为字符串或数字?
注意:我们并不总是知道 key:value 对。它们每次都不同。
您可以在接口上设置任意数量的 key/types,类似于分配对象的方式。如果您事先不知道 属性 名称,您可以使用动态密钥:
export interface ITestObject {
externalObject: {
[key: string]: string | number;
};
}
或者,您可以将 属性 设置为 unknown
并将其转换为正确的类型。
我有一个名为 externalObject
的对象,它有多个 key:value 对。
我还有一个打字稿接口,定义如下:
interface TestObject{
externalObject?: {}
}
我的问题是如何进一步将 externalObject 的键的类型设置为字符串,并将在 externalObject 内部传递的值设置为字符串或数字?
注意:我们并不总是知道 key:value 对。它们每次都不同。
您可以在接口上设置任意数量的 key/types,类似于分配对象的方式。如果您事先不知道 属性 名称,您可以使用动态密钥:
export interface ITestObject {
externalObject: {
[key: string]: string | number;
};
}
或者,您可以将 属性 设置为 unknown
并将其转换为正确的类型。