我想将我的类对象复制到temp对象。
类属性:
export class PageModel {
AppID: any = null;
ParentID: any = null;
Type: any = null;
Order: any = null;
IsEnabled: boolean = false;
View: any = null;
Toolbars: any = null;
Attachments: any = null;
}
我的初始对象:
pageModel : PageModel =new PageModel();
pageModel.Type='New';
pageModel.Order=1;
现在我想将此更新的对象分配给任何临时对象,此临时对象将以形式分配为模型,因此仅在“保存”按钮上点击我想更新我的主要对象。
我只需要帮助,如何将主要对象复制到临时对象。
答案 0 :(得分:3)
tempObject = Object.assign({}, tempObject, pageModel);
这将创建一个新对象,为其分配tempObject的所有属性,然后将pageModel的所有属性分配给它。
答案 1 :(得分:0)
{ a: 0 , b: { c: 0}}
;
所以你可以使用,它也适用于深度克隆
tempObject = JSON.parse(JSON.stringify(pageModel));
请参阅下面的示例:
let obj1 = { a: 0 , b: { c: 0}};
let obj2 = Object.assign({}, obj1);
console.log(JSON.stringify(obj2)); // { a: 0, b: { c: 0}}
obj1.a = 1;
console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 0}}
console.log(JSON.stringify(obj2)); // { a: 0, b: { c: 0}}
obj2.a = 2;
console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 0}}
console.log(JSON.stringify(obj2)); // { a: 2, b: { c: 0}}
obj2.b.c = 3;
console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 3}}
console.log(JSON.stringify(obj2)); // { a: 2, b: { c: 3}}
// Deep Clone
obj1 = { a: 0 , b: { c: 0}};
let obj3 = JSON.parse(JSON.stringify(obj1));
obj1.a = 4;
obj1.b.c = 4;
console.log(JSON.stringify(obj3)); // { a: 0, b: { c: 0}}
有关详细信息,请访问此link