Angular2 - 我正在使用router.navigate - 当我改变路线时它会跳回到原始路线?
我的应用运行正常 . 但是在登录时我想将用户重定向到登录的仪表板 . 但是当它访问仪表板视图时,它会再次返回登录视图 .
This is my code so far:
this.router.navigate('/Dashboard');
使用路由器链接等所有路由都可以正常工作,但我需要login.ts文件才能在登录成功时进行重定向 .
This is my Login.is file:
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']);
});
}
}
1 回答
我设法解决了这个问题 .
解决方案是:app.ts中路由配置的命名问题 . 我的名字与路线不匹配 .