我的angular出现一个很奇怪的问题,只要在Component的构造函数上加参数就会出错。
下面是我的代码:
app.module.ts如下
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { AppRouting } from './app.router';
import { AppComponent } from './app.component';
import { BaseLoginComponent } from './base/login.component';
@NgModule({
declarations: [
AppComponent,
BaseLoginComponent
],
imports: [
BrowserModule,
RouterModule,
AppRouting
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
app.componennt.ts如下
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-root',
template: '<router-outlet></router-outlet>',
styleUrls: ['./app.component.css'],
})
export class AppComponent implements OnInit {
}
app.router.ts如下
import { NgModule } from '@angular/core';
import { RouterModule, Routes, CanActivate } from '@angular/router';
import { BaseLoginComponent } from './base/login.component';
const routes: Routes = [
{ path: 'login', component: BaseLoginComponent},
{ path: '', redirectTo: 'login', pathMatch: 'full'}
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule] // router-outlet exported
})
export class AppRouting { }
login.component.ts如下
import { Component, OnInit } from '@angular/core';
import { Router } from '@angular/router';
@Component({
template: 'hello',
styleUrls: ['./base.component.css']
})
export class BaseLoginComponent implements OnInit {
constructor( private route: Router ) {}
ngOnInit(): void {
}
}
只要把BaseLoginComponent构造函数中的“private route: Router”删除,就能正常。
不知道有没有人遇到同样的问题。
看起来代码没问题。最好删了
node_modules
然后npm install
重新装载所需包试试。