我有一个类Car
,其中包含一些属性:
public id: number;
public roleId: number;
public roleName: string;
我也有相同的对象{id: 1, roleId: 1, roleName: 4}
如何将此对象分配给每个属性?
我不想使用:
this.id = obj.id;
this.roleName = obj.roleName;
this.roleId = obj.roleId;
答案 0 :(得分:2)
使用object.assign属性。
Object.assign(new Car(), {
id: obj.id,
roleName : obj.roleName,
roleId : obj.roleId
})
答案 1 :(得分:1)
试试这个语法:
class Car {
public id?: number;
public roleId?: number;
public roleName?: string;
constructor(values: Car) {
Object.assign(this, values);
}
}
并使用它:
let car = new Car({id: 1, roleId: 1, roleName: "4"});
<强> Demo StackBlitz 强>
<强> DEMO plunker 强>