如何从typescript中的对象中正确删除属性
我写下一个泛型,但也许有人知道一个更正确的解决方案如何从typescript中的对象中正确删除属性,typescript,typescript-generics,Typescript,Typescript Generics,我写下一个泛型,但也许有人知道一个更正确的解决方案 const deleteKeyFromObject = <T extends {}, K extends keyof T>(data: T, key: K) => { const result : any = { ...data }; delete result[key]; return result as Omit<T, K>; } constdeleteKeyFromObject=(数据:T,键
const deleteKeyFromObject = <T extends {}, K extends keyof T>(data: T, key: K) => {
const result : any = { ...data };
delete result[key];
return result as Omit<T, K>;
}
constdeleteKeyFromObject=(数据:T,键:K)=>{
const result:any={…data};
删除结果[键];
返回结果为省略;
}
这可能是一种更好的方法:
const deleteKeyFromObject = <T extends {}, K extends keyof T>(data: T, key: K) => {
const { [key]: _, ...result } = data;
return result;
}
constdeleteKeyFromObject=(数据:T,键:K)=>{
常量{[key]:,…result}=数据;
返回结果;
}
result
的类型正确地推断为Omit
谢谢,我意识到我不需要单独的函数,我可以使用:const{omitKey:,…result}=data;