2013-06-11 9 views
5

ich eine emberjs App haben, die wie die Probe hier sehr strukturiert: https://github.com/tildeio/bloggr-clientemberjs Ereignis für als Modelländerungen

Die Frage, die ich habe ist, dass, wenn der Benutzer klickt auf einen ‚Post‘ auf der linken Seite, ist Gibt es ein Ereignis, das ich in der Post-Ansicht/Route/Controller abonnieren kann? Eine Javascript-Bibliothek, die ich verwende (gridster), benötigt etwas Javascript, um ausgeführt zu werden, wenn der Benutzer von Post zu Post wechselt. Ich habe versucht, didInsertElement, aber das scheint nicht zu schießen (mit 1.0.5)

+0

klingt eher ein Job für den Router/Controller –

+0

@j_mcnally die Veranstaltung/Methode würde ich dafür verwenden? – Ben

Antwort

6

Sie können die Content-Eigenschaft PostController beobachten. Dies kann von jedem beliebigen Ort aus geschehen, der Zugriff auf den PostController hat. Zum Beispiel von Postview:

App.PostView = Ember.View.extend({ 
    templateName: 'post', 
    contentDidChange: function() { 
    console.log('content changed to: ', this.get('controller.content')); 
    }.observes('controller.content') 
}) 
+0

das scheint zu funktionieren, aber es scheint zweimal für mich zu schießen ... – Ben

+0

Ja, Sie müssen es vielleicht entprellen. –

+0

was meinst du damit entprellen? Auch nach der Dokumentation sollte didInsertElement() auf die View triggern ... könnte das ein Fehler in 1.0.5 sein? – Ben