没有简单组件的提供者

Але*_*тић 2 angular-providers angular

直到 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() { }

}
Run Code Online (Sandbox Code Playgroud)

这是主要的 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 {}
Run Code Online (Sandbox Code Playgroud)

控制台错误是:

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

Pan*_*kar 5

删除HttpClientModule从模块providers,它应该里面放imports的选项NgModule。还可以尝试重新构建/重新运行应用程序。

可能您正试图将 Component 作为可注入对象注入到 Service 中。

  • 您是否尝试在某个构造函数中注入 `FormAddComponent` 作为依赖项? (3认同)