Я хотел бы реализовать грязное свойство, используя JSON.stringify (модель). У меня есть начальная модель. которые можно сериализовать в строку, используя следующее:
original:string;
setModel(model:any) {
// serialize the model
this.original = JSON.stringify(model);
this.model = model;
}
get isDirty() :boolean
{
// check if model has changed.
return JSON.stringify(this.model) != this.original;
}
Это работает для простого свойства изменяемой модели, например
model.name = "My name is Slim Shady"!
Однако, следующий результат не обновляет isDirty () до true:
model.members.push({name:"Slim Shady"});
Как я могу реализовать это, чтобы проверка грязи была проверена для обоих сценариев?