如何键入枚举和对象以具有相同的属性 React Typescript
How to type enum and object to have same properties React Typescript
我有一个枚举:
enum INFO_CODES {
goToInit = 'goToInit',
lockIp = 'lockIp',
}
并且我想创建一个具有相同属性(仅 goToInit 和 lockIp)的对象(或枚举)
const SOME_OBJ = {
goToInit: function, //here i need function
lockIp: function,//here i need function
someProp:function //here i need mistake,can create only like in
INFO_CODES props.
}
您可以使用 Record
并仅使用 enum
作为键的第一个通用参数,然后是您接下来想要的任何函数类型。
enum INFO_CODES {
goToInit = 'goToInit',
lockIp = 'lockIp',
}
type result = Record<INFO_CODES, () => void>;
const test: result = {
goToInit: () => console.log("test"),
lockIp: () => console.log("lockIp"),
}
我有一个枚举:
enum INFO_CODES {
goToInit = 'goToInit',
lockIp = 'lockIp',
}
并且我想创建一个具有相同属性(仅 goToInit 和 lockIp)的对象(或枚举)
const SOME_OBJ = {
goToInit: function, //here i need function
lockIp: function,//here i need function
someProp:function //here i need mistake,can create only like in
INFO_CODES props.
}
您可以使用 Record
并仅使用 enum
作为键的第一个通用参数,然后是您接下来想要的任何函数类型。
enum INFO_CODES {
goToInit = 'goToInit',
lockIp = 'lockIp',
}
type result = Record<INFO_CODES, () => void>;
const test: result = {
goToInit: () => console.log("test"),
lockIp: () => console.log("lockIp"),
}