Не знаю, сталкивался ли кто с этой проблемой. Я использую поток для загрузки данных в активный метод некоторых модулей. Именно так:
export class ContractRate{
constructor(dispatcher){
this.dispatcher = dispatcher;
}
activate() {
this.dispatcher.dispatch('rates.get');
}
@handle('rates.changed')
ratesChanges(action, rates){
this.rates = rates;
}
}
export class Index{
constructor(dispatcher){
this.dispatcher = dispatcher;
}
@handle('rates.get')
getRates(){
//here there's some code that retrieves the rates
this.dispatcher.dispatch('rates.changed', this.rates);
}
@handle('rates.changed')
ratesChanges(action, rates){
this.rates = rates;
}
}
Дело в том, что кажется, что this.dispatcher.dispatch('rates.get'); встречается только один раз.
ContractRate загружается при выборе определенной вкладки, которая запускает метод активации, запускающий всю отправку событий. Это работает при первом выполнении метода активации, в следующий раз — нет.
Я почти уверен, что это происходит, потому что я использую диспетчер в методе активации, так как я переместил вызов диспетчера в другой метод, и он работает совершенно нормально.
Надеюсь, кто-нибудь из вас может помочь мне здесь.