Angular2 - 我正在使用 router.navigate - 当我改变路线时它跳回到原来的路线?

Angular2 - I'm using router.navigate - when I change route it jumps back to original route?

Angular2 - 我正在使用 router.navigate - 当我改变路线时它跳回原来的路线?

我的应用运行良好。 但是在登录时我想将用户重定向到登录的仪表板。 但是当它访问仪表板视图时,它会 returns 再次登录视图。

到目前为止,这是我的代码:

  this.router.navigate('/Dashboard'); 

所有路由都可以通过使用 router-link 等正常工作,但我需要 login.ts 文件在登录成功时进行重定向。

这是我的 Login.is 文件:

 import {Component, View, CORE_DIRECTIVES, FORM_DIRECTIVES, NgIf} from 'angular2/angular2';
 import {Router, RouterLink, RouterOutlet} from 'angular2/router';
 import {AuthService} from '../../services/authService';
 import {User} from '../../models/user';
 import {Dashboard} from '../home/home';

 @Component({
   selector: 'Login',  
   providers: [AuthService, User]
 })

 @View({
   templateUrl: '/src/app/components/login/login.html',
   directives: [RouterOutlet, RouterLink, CORE_DIRECTIVES, FORM_DIRECTIVES, NgIf],
 })

 export class Login {
   authService:AuthService;
   user: User;
   error: string = null;
   router: Router;

   constructor(router: Router, authService: AuthService, user: User){   
       this.authService = authService;
       this.user = user;
       this.router = router;
   }

   logIn = () => {  
        this.authService.logIn(this.user).then((response) => {
             if(response === false)
                this.error = "Incorrect login details";
             else
                this.router.navigate(['/Dashboard']);
        });       
   }

 }

我设法解决了这个问题。

解决方案是:app.ts 中路由配置的命名问题。我的名字与路线不匹配。