W pliku Ember.js zdarzenia, które nie są obsługiwane w kontrolerze, propagują łańcuch routera do ścieżki aplikacji (więcej informacji można znaleźć w artykule http://emberjs.com/guides/views/handling-events/).Ember.js - Zdarzenie propagacji w górę łańcucha kontrolera/routera
Czy istnieje sposób zdefiniowania procedury obsługi zdarzeń w kontrolerze, która umożliwia kontynuowanie propagacji zdarzenia na routerze?
App.SampleController = Ember.ObjectController.extend({
myEvent: function(obj) {
this.set('aVariable', true);
}
});
App.ApplicationRoute = Ember.Route.extend({
events: {
myEvent: function(obj) {
this.transitionTo('something');
}
}
});
Czy istnieje sposób dla obsługi myEvent w CarsController aby ustawić swoją zmienną stanu wewnętrznego, ale również kopać zdarzenie górę łańcucha na trasie aplikacji? Jestem tego świadomy:
App.__container__.lookup('router:main').send('myEvent', obj);
, ale używa wewnętrznych elementów Ember. Miałem nadzieję, że istnieje bardziej standardowy sposób, aby to zrobić.
Nie działa (wypróbowano przy użyciu Ember.js 1.0.0-rc.6). Zastanawiałem się, czy to też może być, więc próbowałem powrócić do prawdy i fałszu, ale nie działałem. – kleinsch
@kleinsch, zredagowałem moją odpowiedź, przepraszam za pomyłkę – intuitivepixel
@kleinsch adde także demo jsbin: http://jsbin.com/oduhom/3/edit wysyłając zdarzenie do kontrolera aplikacji powinno działać – intuitivepixel