Flex PuremVC: посредник не регистрируется
-
25-09-2019 - |
Вопрос
Компонент создается во время выполнения, а посредник создается и зарегистрирован. Все хорошо.
В отдельном представлении еще один экземпляр этого компонента создан. Посредник создан, но onregister () не называется 2-го временем. Я не знаю, нормально ли это ... но если это так, как я могу позвонить в onregister () во второй раз? Спасибо. :)
Решение
Я подозреваю, что имя посредника не уникально, в этом случае второй посредник не зарегистрирован.
Из класса View Puremvc:
public function registerMediator( mediator:IMediator ) : void
{
// do not allow re-registration (you must to removeMediator fist)
if ( mediatorMap[ mediator.getMediatorName() ] != null ) return;
...
Для получения дополнительной помощи в том, как назначить посредника уникальное имя, было бы хорошо увидеть немного больше того, как вы пытаетесь создать и зарегистрировать свой посредник.
Другие советы
Спасибо, Майк !!! После публикации здесь я сделал несколько исследований, и я придумал тот же вывод. У меня не было исходного кода PUREMVC в проекте, над которым я работаю, и поскольку проект использует PUREMVC V.1.0, я не знал, смогу ли я все еще получить исходный код для этого. Это будет обновлено до V.2 в ближайшее время.
В любом случае, я назначил уникальное имя посредника и присвоил, что уникальное имя в качестве идентификатора компонента. Вот ссылка на то, где он помог мне отладить:
http://forums.puremvc.org/idex.php?topic=596.0
Надеюсь, это будет полезно для других Puremvc Noobie (например, я) в будущем. :)