ts 如何继承父类并修改属性?
ts 如何继承父类并修改属性?
相关代码
export interface ITableData {
flag: 0 | 1
measure_name: string
measure_value: number
result_desc: string
standard_deviation: number
standard_value: number
name: string
}
interface IMeasureData extends ITableData {
measure_value: number | string
}
const measureList: IMeasureData[] = [{ measure_value: "2" }]
回复
1个回答
test
2024-06-26
可以使用工具类型 Omit
将需要修改的属性 measure_value
剔除掉,然后继承剔除后的接口,并对该属性进行重新声名。(PS:如下代码中,我将原接口的属性改成可选属性,以避免赋值时的报错。)
export interface ITableData {
flag?: 0 | 1;
measure_name?: string;
measure_value?: number;
result_desc?: string;
standard_deviation?: number;
standard_value?: number;
name?: string;
}
interface IMeasureData extends Omit<ITableData, "measure_value"> {
measure_value: number | string;
}
const measureList: IMeasureData[] = [{ measure_value: "2" }];
希望对题主有所帮助!
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容