Pergunta

Um componente é criado em tempo de execução e um mediador é criado e registrado. Tudo está bem.

Em uma visão separada, outra instância desse componente é criada. O mediador é criado, mas o OnRegister () não é chamado da segunda vez. Não sei se isso é normal ... mas se é, como faço para que ele ligue para o OnRegister () na segunda vez? Obrigado. :)

Foi útil?

Solução

Suspeito que o nome do mediador não seja único; nesse caso, o segundo mediador não está registrado.

Da classe PureMVC View:

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

Para obter mais ajuda para atribuir um nome único ao mediador, seria bom ver um pouco mais de como você está tentando instanciar e registrar seu mediador.

Outras dicas

Obrigado, Mike !!! Depois de postar aqui, fiz mais algumas pesquisas e cheguei com a mesma conclusão. Eu não tinha o código -fonte do PureMVC no projeto em que estou trabalhando e, como o projeto está usando o PureMVC v.1.0, não sabia se ainda poderia obter o código -fonte para isso. Será atualizado para v.2 em breve.

De qualquer forma, atribuí um nome exclusivo ao mediador e atribuí esse nome exclusivo como o ID do componente. Aqui está o link para onde me ajudou a depurar:

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

Felizmente, será útil para outro PureMVC Noobie (como eu) no futuro. :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top