我尝试使用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。
答案 0 :(得分:0)
只需取出/
中的router.navigate
this.router.navigate(["login"]);