Каков наилучший способ клонирования объектов Observable в Knockout для создания механизма транзакций?
Например, отредактируйте эту модель:
var Action = function (name, ownerType, condition, expression, args) {
var self = this;
this.name = ko.observable(name);
this.ownerType = ko.observable(ownerType);
this.condition = ko.observable(condition);
this.expression = ko.observable(expression);
this.args = ko.observable(args);
};
Я хочу сохранить состояние этого объекта, прежде чем пользователь его отредактирует. И если пользователь отменит редактирование - состояние отката объекта.
Самый простой способ - создать другой проект, например:
self.tempAction = new Action(action.name(), action.ownerType(), action.condition(), action.expression(), action.args());
Но я не уверен, что это изящное решение.
Итак, любые идеи?