2015-08-14 5 views
0

У меня есть экран, где я могу редактировать свою модель «Флорида» (это может быть любое состояние). Как я могу отменить мои изменения в модели и вернуться обратно во Флориду (в настоящее время я не использую emberdata)?Как отменить изменения модели без использования emberdata

Если я просто выполняю переходный переход, изменения все еще остаются в моей модели.

Это то, что мой URL выглядит следующим образом:

http://localhost:4200/editor/state/florida/edit

ответ

0

Вы должны пролонгировать его самостоятельно. Вам нужно отслеживать, какие поля загрязнены, предыдущие значения для этих полей, а затем предоставить метод отмены/отката, который вы вызовете при переходе.

+0

Было бы проще передать копию модели, и если они нажмут на отмена, просто замените модель, которую они редактировали, с копией оригинала? – Square

+0

Если бы вы использовали этот подход, вам нужно было бы сохранить 2 модели для каждого редактирования. Если ваши модели большие, это проблема. Также, если ваши модели mixin Ember.Observable, я не уверен, что произойдет с другим концом наблюдателей при замене экземпляра модели. Как правило, я избегаю такого подхода из-за сложности, которую он вводит. Намного проще просто сохранить грязный список с исходными значениями. –

Смежные вопросы