Ich binde ein Modell an meinen Controller und möchte Änderungen an seinen Feldern beobachten, damit ich einige Daten neu laden und eine Ansicht aktualisieren kann.Beobachten von Änderungen an jedem Feld in gebundenem Modell in Controller
Im Moment habe ich etwas wirklich nicht-DRY wie folgt aus:
goalController = Ember.Object.create({
...
recompute: function() { save model, load recomputed data from server }
...
nameChanged: function() { this.recompute() }.observes('content.name'),
incomeChanged: function() { this.recompute() }.observes('content.income')
});
Gibt es eine Ember-y Weg, dies zu tun?
Sie sollten auch in der Lage sein, es zu schreiben, wie: ' '' goalController = Ember.Object.create ({ goalUpdated: function() {// mach dein Ding } .observes() "Inhalt {name, Einkommen}."}); '' ' – srt32
Das würde @ str32 funktionieren, aber es kann wirklich hässlich für Modelle mit 5+ Eigenschaften zu sehen bekommen. Ich habe eine "Alarm" -Eigenschaft innerhalb des Modells erstellt, und ein Beobachter hat den Alarm innerhalb des Modells über alle Eigenschaften geschaltet, die ich vom Controller beobachten wollte. Endlich eine einzige Beobachtung über 'model.alarm'. Immer noch hässlich, aber der Controller braucht jetzt nicht die Interna des Modells in diesem Szenario. – robertodecurnex