Программирование RX - как получить предыдущие сообщения от MessageBroker? - PullRequest
0 голосов
/ 12 апреля 2020

Я использую UniRX (C#), который пытается походить на RX JS и другие.

Я пытаюсь убедиться, что мои сетевые объекты инициализируют после полученных данных.

Некоторые из моих объектов создаются и подписываются позже , чем MSGPlayerDataLoaded фактически запущен, поэтому никогда не переходите к OnPlayerDataLoaded.

    protected virtual void Awake()
    {
        MessageBroker.Default.Receive<BaseMessage>().Where(msg => msg.id == GameController.MSGPlayerDataLoaded).Subscribe(msg => OnPlayerDataLoaded());
    }

Можно ли заглянуть в прошлое и схватить старые события с момента создания MessageBroker?

Из документации RX JS Я подозреваю, что что-то вроде withLatestFrom могло бы помочь, но для этого понадобился бы фиктивный вспомогательный поток, который выглядит хакерским.

...