我有一个要从webapi调用中投射的对象。
所以可以说这是来自webapi的数据
let userTestStatus: { id: number, name: string }[] = [
{ "id": 0, "name": "Available", "date" : "01/01/2001" },
{ "id": 1, "name": "Ready", "date" : "01/01/2001" },
{ "id": 2, "name": "Started", "date" : "01/01/2001" }
];
这是我的打字稿课。如您所见,没有日期属性
export myClass{
id: number;
name: string;
}
当对象被转换时,date属性存在,即使它在我的班级中不存在。如何获取打字稿来忽略类中不存在的属性?
答案 0 :(得分:1)
您可以将所有对象仅映射到您想要的模型上
const myModelObejctsArray: MyModel[] = userTestStatus.map(user => {
return {
id: user.id,
name: user.name
}
})
答案 1 :(得分:0)
您的数据符合给定的类型接口。 但是,您的数据具有比声明为类型更多的属性。
您的Typescript IDE应该向您显示一些消息,表明数组中的对象没有专门的date属性。但是您仍然可以运行它。
如果您不想在数组元素中使用date属性,则可以自行删除它:
userTestStatus.forEach(e => delete e.date);