Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como posso chamar uma rota dentro de uma classe no Angular2?

Como poderia passar uma rota depois de uma validação da minha função do angular2 e chamar a nova rota com os parâmetros da minha validação no caso estou tentando fazer uma autenticação.

  this.http.post("/loginUser",JSON.stringify(this.usuario),{headers:headers})
        .subscribe(user=> {

            const jsonretorno = user.json();

            if(jsonretorno.length != 0){

            if(jsonretorno[0].nome_usuario){

                console.log("Usuario valido");

            this.usuario = jsonretorno;

            }
            }else{
                console.log("Usuario invalido");
            }

        });

Deixei a validação no backend a comparação está lá.

Se tiver uma ideia melhor de fazer autenticação ou uma indicação de um conteúdo ajudaria muito também.

2 respostas

Oi Danilo, tudo bem? Você quer executar uma rota depois de validar o usuário, é isso mesmo? O que te impede de fazer um this.http.get pra rota?

solução!

No componente (nome_classe.component) você declara o "Router" no import, constructor e chama ele onde for necessário,

// Imports
import { Router } from '@angular/router';

// Constructor
constructor ( private router: Router ) {}

// Chamar uma rota: this.router.navigate(['/nome_da_rota/',]);
this.router.navigate(['/detalhes/', id]);