Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Matheus Brito

[Resolvido] Problema na aplicacao usando Swiz

Recommended Posts

Vo tentar descrever o problema que to enfrentando:

Desenvolvi assim: Quando listo meus alunos na

view de mensalidade eu disparo um evento e esse evento é o find do

Aluno, beleza so que o find do aluno tem o find_complete, dai no

onResult eu populo o model normal. Assim:

 

//Metodo de listagem dos alunos na action de Mensalidade

public function find():void{
        var aluno:AlunoDTO = new AlunoDTO();
        aluno.turmaid = model.objTurma.turmaid;
        Swiz.dispatchEvent(new AlunoEvent(AlunoEvent.FIND_BY_TURMA,aluno));

}

//Controller de Aluno
[Mediate(event='AlunoEvent.FIND_BY_TURMA')]
                public function findByTurma(e:AlunoEvent):void
                {
                        executeServiceCall(alunoRemote.findByTurma(e.aluno), findHandler,
faultHandler);
                }

//findHandler
private function findHandler(e:ResultEvent):void
                {
                        model.dataAluno = new ArrayCollection(e.result as Array);
                        Swiz.dispatchEvent(new AlunoEvent(AlunoEvent.FIND_COMPLETE));
                        //Ao disparar esse find_complete a minha view de Aluno acaba ouvindo esse
                        // evento tb e ocasiona a mesma ação
                }

//Init da view de Aluno
public function init():void{
 Swiz.addEventListener(AlunoEvent.FIND_COMPLETE, findCompleteHandler);

}

private function findCompleteHandler(e:AlunoEvent):void{

                Alert.show('Teste');

}

Ou seja o alert é disparado tanto na tela de mensalidade como na de

aluno devido ao find_complete ser chamado nos dois lugares, como

contorno isso? Alguma idéia?

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se eu entendi direito...

2 views escutando o mesmo evento?

 

AlunoEvent.FIND_COMPLETE -> public static const FIND_COMPLETE:String = "ALUNO_FIND_COMPLETE";

MensalidadeEvent.FIND_COMPLETE - > public static const FIND_COMPLETE:String = "MENSALIDADE_FIND_COMPLETE";

 

e não:

 

AlunoEvent.FIND_COMPLETE -> public static const FIND_COMPLETE:String = "FIND_COMPLETE";

MensalidadeEvent.FIND_COMPLETE - > public static const FIND_COMPLETE:String = "FIND_COMPLETE";

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.