Сигнал никогда не вводится - robotlegs2.0
В конфигурационном файле приложения у меня есть отображение сигнала / команды
signalCommandMap.map(DisconnectUserSignal).toCommand(DisconnectUserCommand);
Затем у меня есть два класса подключения:
public class BaseConnection implements IBaseConnection
{
// When I am trying to inject the signal here:
[Inject] public var disconnectUserSignal:DisconnectUserSignal; // it is always null
_netConnection = new NetConnection();
...
}
а также
public class BBConnection extends DefaultConnectionCallback implements IBBConnection
{
// When I am trying to inject the signal here:
[Inject] public var disconnectUserSignal:DisconnectUserSignal; // it works perfectly fine
_baseConnection = new BaseConnection(this);
}
Есть ли какие-либо предположения о том, что может быть причиной? Спасибо
1 ответ
Решение
Пройдя документацию по фреймворку robotlegs, я нашел ответ:
Я изменил _baseConnection, чтобы он стал интерфейсом, и переместил все из конструктора BaseConnection в метод init, и теперь я внедряю его в BBConnection.
Вот как выглядит BBConnection:
[Inject]
public var baseConnection:IBaseConnection;
public function BBConnection()
{
}
[PostConstruct]
public function init():void
{
baseConnection.init(this);
}
Теперь я могу успешно ввести сигнал Disconnect внутри базового соединения.
Источник: https://github.com/robotlegs/robotlegs-framework/wiki/common-problems