Bir Ember listesi ve bir düzenleme formum var. Listenin seçili öğesi düzenleme formunu her değiştirdiğinde, herhangi bir değişiklik yapılmaz ve yeni model yüklenir.Aynı rota arasındaki değişiklikleri en uygun şekilde kaldırmak için Ember olayı
Sorunum, devre dışı bırakma olayı tetiklenmediği için değişiklikleri atmanın bir yolu olmamasıdır. Örneğin, url/favs/123/edit
adresinden url/favs/456/edit
'a gidiş devreden çıkmak (ve çıkmak) olayı ateş etmez. Yani herhangi bir değişikliği doğru şekilde atmanın bir yolu yoktur.
App.Router.map(function() {
this.resource('favs', { path: '/favs' }, function() {
this.route('new');
this.route('edit', { path: ':fav_id/edit' })
});
});
[...]
App.FavsEditRoute = Ember.Route.extend({
deactivate: function() {
var model = this.get('currentModel');
if(model && model.get('isDirty')) {
model.get('transaction').rollback();
}
},
model: function(params) {
return App.Fav.find(params.fav_id);
},
});
Kor gençtir. Bir çekicilik gibi çalışır ancak doRollback kodu bu gibi daha iyi olabilir – Everydaypanos
var controller = this.controller, content = (controller? Controller.get ('content'): null); \t \t \t \t halinde (içerik && content.get ('IsDirty')) { \t \t content.get ('işlem') geri alma (.); } – Everydaypanos
Şimdi, kullanıcılardan harika olmasını istemek için bir HTML iletişim kutusu sunmak için bir ara durum olsaydı. Yine de bu daha fazla :) – Everydaypanos