2010-02-04 3 views
2

Компонент создается во время выполнения и создается и регистрируется медиатор. Все хорошо.Flex PureMVC: Медиатор не регистрируется

В отдельном представлении создается другой экземпляр этого компонента. Медиатор создан, но onRegister() не называется вторым. Я не знаю, нормально ли это ... но если да, то как мне заставить его вызвать onRegister() второй раз? Благодарю. :)

ответ

4

Я подозреваю, что имя посредника не уникально, и в этом случае второй медиатор не зарегистрирован.

От PureMVC Посмотреть класс:

public function registerMediator(mediator:IMediator) : void 
{ 
    // do not allow re-registration (you must to removeMediator fist) 
    if (mediatorMap[ mediator.getMediatorName() ] != null) return; 
    ... 

Для получения дополнительной помощи с тем, как назначить участие посредника уникальное имя, было бы хорошо, чтобы увидеть немного больше о том, как вы пытаетесь создать экземпляр и зарегистрировать посредник.

1

Спасибо, Майк !!! После публикации здесь я сделал еще несколько исследований, и я пришел к такому же выводу. У меня не было исходного кода pureMVC в проекте, над которым я работаю, и поскольку проект использует pureMVC v.1.0, я не знал, могу ли я получить исходный код для этого. Скоро он будет обновлен до версии 2.

В любом случае, я назначил уникальное имя посреднику и назначил это уникальное имя как идентификатор компонента. Вот ссылка, где она помогла мне отлаживать:

http://forums.puremvc.org/idex.php?topic=596.0

Будет надеяться, что это будет полезно для другого PureMVC Noobie (как я) в будущем. :)

+1

Вы можете, конечно, получить исходную версию своей версии из репозитория PureMVC SVN: http://svn.puremvc.org/PureMVC_AS3/tags/ –

Смежные вопросы