In Ember.js, gli eventi che non sono gestiti nel controller propagano la catena del router alla rotta dell'applicazione (vedere http://emberjs.com/guides/views/handling-events/ per ulteriori dettagli).Ember.js - Propagazione evento sulla catena controller/router
C'è un modo per definire un gestore di eventi nel controller che consente all'evento di continuare a propagarsi al router?
App.SampleController = Ember.ObjectController.extend({
myEvent: function(obj) {
this.set('aVariable', true);
}
});
App.ApplicationRoute = Ember.Route.extend({
events: {
myEvent: function(obj) {
this.transitionTo('something');
}
}
});
C'è un modo per il gestore myEvent in CarsController per impostare la sua variabile di stato interno, ma anche dei calci l'evento a monte della catena al percorso di applicazione? Sono a conoscenza di questo:
App.__container__.lookup('router:main').send('myEvent', obj);
ma utilizza interni di Ember. Speravo ci fosse un modo più standard per farlo.
Non funziona (provato con Ember.js 1.0.0-rc.6). Mi chiedevo se fosse anche questo, quindi ho provato a restituire true e false ma nessuno dei due ha funzionato. – kleinsch
@kleinsch, ho modificato la mia risposta, mi dispiace per l'errore – intuitivepixel
@kleinsch adde anche una demo jsbin: http://jsbin.com/oduhom/3/edit che invia l'evento al controller dell'applicazione dovrebbe funzionare – intuitivepixel