2013-02-14 10 views
5

Ich möchte einige Aufräumarbeiten machen, wenn ich die Route verlasse, wie Stoppuhren. Dafür benötige ich ein Ereignis, das beim Verlassen der Route ausgelöst wird, und ich brauche Zugriff auf die Instanz des Controllers innerhalb dieses Ereignisses.Ember Cleanup beim Verlassen der Route

Es ist ein exit Ereignis, aber es bekommt keine Argumente und this.get('controller') im Inneren nicht arbeiten - gibt undefined.

Gibt es eine geeignete Methode zum Erhalt der Controller-Instanz im exit-Ereignis oder vielleicht ein anderes Ereignis, von dem ich nichts weiß?

I Setup this fiddle mit einem Beispiel, was ich will ..

Antwort

1

du this.controllerFor('home') telefonisch erreichen können. Sie können es versuchen in this JSFiddle.

Dies ist ein bisschen ärgerlich, so eine pull request has been merged vor kurzem, dass Sie direkt this.controller verwenden können, wie Sie in this JSFiddle sehen können.

+0

Ich mochte den 'this.controller'! Danke vielmals! BTW Sie werden die 'ControllerFor'-Sache ablehnen. –

+0

@ShimonRachlenko Wo haben Sie das gesehen? Die API wurde gerade dokumentiert: http://goo.gl/7jXuI – louiscoquio

+0

Ich las es irgendwo im Internet und sah es auch im Quellcode, aber jetzt sehe ich, dass es 'ControllerMixin.controllerFor' ist, was veraltet ist !! Mein Fehler.. –

Verwandte Themen