Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

NoobCodec

Angular 6 render da página apôs atualização

Mensagens Recomendadas

NoobCodec

Bom dia, 

Estou a iniciar me em angular e deparei me com duas questões que gostava de tentar esclarecer com que percebe disto.

1 - Criei uma aplicação em que na minha pagina principal tenho uma sidenav, uma toolbar e content.

A sidenav e a toolbar são components que serão mostrados caso o utilizador esteja logado e o content tem um <router-outlet> por onde serão passados os vários componentes da aplicação. Sempre que faço login o render dos componentes sidenav e toolbar é feito com sucesso com o (ngOnInit) mas quando faço logout(num component filho que será passado pelo router-outlet) não, pois não volta a correr a função e fazer o respectivo render da página. Resolvi usando o (OnDoCheck), mas reparei que sempre que insiro um carácter( ou qualquer outra acção) ele é disparado. Isto não é muito pesado para a aplicação?

Existe outra maneira de correr uma função na "app.component.ts" sempre e só se for feito logout, neste caso, num component filho que ira passar no <router-outlet> ?

2- Tentei usar uma flag passando a variável filho -> pai.

Usei o @output no filho com o EventEmitter mas a duvida está como o recebo no pai. Normalmente faria <app-filho (variavel-filho)="funcao-pai($event)">, mas como estou a passar estes componentes com o <router-outlet> existe alguma maneira de passar esse valor?

 

Espero ter passado a minha dúvida de forma minimamente perceptível. 

Desde já obrigado,

Cumprimentos. 

Editado por NoobCodec

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.