typescript 继承的字段问题

interface BaseInfo{
    Name: string;
    Age: number;
}

interface StudentInfo extends BaseInfo{
    ID: number;
    CreatedTime: number;
}

let dataList: StudentInfo[] = []
let editData: BaseInfo = <BaseInfo>{}

// 编辑接口参数
editApi({
    ID: ID,
    data: editData
})

获取到数据dataList是StudentInfo,要对其中某一个对象进行编辑,编辑接口传的数据内容editData是一个BaseInfo类型,不需要ID字段和CreatedTime。

editData是直接从dataList里面获取某一项,这一项里面会包含ID和CreateTime,这两个字段editData不需要。直接editData=dataList[0]或者editData=Object.assign({},dataList[0])不会报错,传参的时候会把这多余的两个字段(ID,CreatedTime)带过去。

有没有什么办法让editData从dataList获取值的时候,只取需要的字段?除了一个属性一个属性的添加。

待解决 悬赏分:30 - 离问题结束还有 506天6小时10分37秒
反对 0举报 0 收藏 0

我来回答

回答2