Angular4:Can't resolve all parameters for问题

新手上路,请多包涵

我的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”删除,就能正常。
不知道有没有人遇到同样的问题。

阅读 9.3k
3 个回答

看起来代码没问题。最好删了 node_modules 然后 npm install 重新装载所需包试试。

新手上路,请多包涵

好几天了,我也遇到这个问题呢

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进