重定向失败

时间:2019-05-24 11:42:22

标签: angular angular-router

我尝试使用angular和app-routing实现登录页面,但改版未完成,它通过url传递,但html代码保持不变。 这是app-routing-module的代码:

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { ChooseCatalogueComponent } from './choose-catalogue/choose- 
catalogue.component';
import { LoginComponent } from './login/login.component';

const routes: Routes = [
    { path: 'choose-catalogue', component: ChooseCatalogueComponent },
    { path: 'login', component: LoginComponent },
    { path: '', component: LoginComponent }
];

@NgModule({
    imports: [RouterModule.forRoot(routes)],
    exports: [RouterModule]
})
export class AppRoutingModule { }

login.component.ts:

import { Component, OnInit } from '@angular/core';
import {Router} from '@angular/router';
@Component({
    selector: 'app-login',
    templateUrl: './login.component.html',
    styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
    username: string;
    password: string;

    constructor(private router: Router) { }
        ngOnInit() {
        }

    login() : void {
        if(this.username =='admin' && this.password == 'admin'){

            this.router.navigate(["choose-catalogue"]);
            }
        else {
            this.router.navigate(["/login"]);
        }   
    }
}

当我以“ admin / admin”的身份输入登录名和密码时,页面的URL更改为http://localhost:4200/choose-catalogue,但是html仍然是登录页面的URL。

1 个答案:

答案 0 :(得分:0)

只需取出/中的router.navigate

 this.router.navigate(["login"]);