Flex PureMVC: Медиатор не регистрируется - PullRequest
2 голосов
/ 04 февраля 2010

Компонент создается во время выполнения, а посредник создается и регистрируется.Все хорошо.

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

Ответы [ 2 ]

4 голосов
/ 04 февраля 2010

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

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

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

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

1 голос
/ 05 февраля 2010

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

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

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

Надеюсь, это будет полезно для других чистокровных нуби (таких как я) в будущем. :)

...