2

直到 5 分钟前它才起作用……这就是组件

import { Component, OnInit } from '@angular/core';
import {Osobaa} from '../osobaa';
import { Osoba } from '../osoba';
import {OsobaService} from '../osoba.service';

@Component({
  selector: 'app-form-add',
  templateUrl: './form-add.component.html',
  styleUrls: ['./form-add.component.css']
})
export class FormAddComponent implements OnInit {
  osoba : Osobaa;
  constructor() { }

  ngOnInit() { }

}

这是主要的 app.module.ts

import { BrowserModule } from "@angular/platform-browser";
import { NgModule } from "@angular/core";
import {FormsModule} from "@angular/forms";

import { AppComponent } from "./app.component";
import { HeaderComponent } from "./header/header.component";
import { LoginFormComponent } from "./login-form/login-form.component";
import { FooterComponent } from "./footer/footer.component";
import { DashboardComponent } from "./dashboard/dashboard.component";
import { RouterModule, Routes } from "@angular/router";
import {UserService} from './user.service';
import {AuthguardGuard} from './authguard.guard';
import { UserComponent } from "./user/user.component";
import { NotfoundComponent } from './notfound/notfound.component';
import { TableViewComponent } from './table-view/table-view.component';
import {HttpClientModule} from '@angular/common/http';
import {OsobaService} from './osoba.service';
import { HttpModule } from '@angular/http';
import { FormAddComponent } from './form-add/form-add.component';



const appRoutes: Routes = [
  {
    path: "",
    component: LoginFormComponent
  },
  {
    path: "add" , 
    component: FormAddComponent
  },
  {
  path: "table", component : TableViewComponent
  },
{
  path: "users/:name", 
  component : UserComponent
},
  {
    path: "dashboard",
    canActivate:[AuthguardGuard],
    component: DashboardComponent
  },
  {
    path: '**',
    component: NotfoundComponent
  }
];

@NgModule({
  declarations: [
    AppComponent,
    HeaderComponent,
    LoginFormComponent,
    FooterComponent,
    DashboardComponent,
    UserComponent,
    NotfoundComponent,
    TableViewComponent,
    FormAddComponent
  ],
  imports: [BrowserModule, RouterModule.forRoot(appRoutes),HttpModule,FormsModule],
  providers: [UserService,AuthguardGuard,HttpClientModule,OsobaService],
  bootstrap: [AppComponent]
})
export class AppModule {}

控制台错误是:

错误错误:未捕获(承诺):错误:StaticInjectorError [FormAddComponent]:StaticInjectorError [FormAddComponent]:NullInjectorError:没有FormAddComponent的提供者!错误:StaticInjectorError[FormAddComponent]:StaticInjectorError[FormAddComponent]:NullInjectorError:没有 FormAddComponent 的提供者!

4

1 回答 1

6

从 中删除HttpClientModule模块,providers它应该放在imports. NgModule还尝试重新构建/重新运行应用程序。

可能您正在尝试将 Component 作为可注入的方式注入到 Service 中。

于 2017-11-27T16:57:52.443 回答