-1

答案并没有帮助我正确导入 http 模块。


$ ng version
Angular CLI: 1.5.0
Node: 6.11.5
OS: linux x64
Angular: 5.0.0
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.5.0
@angular-devkit/build-optimizer: 0.0.32
@angular-devkit/core: 0.0.20
@angular-devkit/schematics: 0.0.35
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.0
@schematics/angular: 0.1.0
typescript: 2.4.2
webpack: 3.8.1
$

下面的代码,

/* ../src/app/app.module.ts */
import {HttpClientModule} from '@angular/common/http';

@NgModule({
  declarations: [
    AppComponent,
    HomeComponent,
    DirectoryComponent,
    FilterPipe,
    LoggingService
  ],
  imports: [
    FormsModule,
    BrowserModule,
    HttpClientModule,
    routing
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

和服务代码,

/*  ../src/app/data.service.ts */
import { Injectable } from '@angular/core';
import {HttpClient} from '@angular/common/http';

@Injectable()
export class DataService {

  constructor(private http: HttpClient) { }

}

给出错误:

ERROR in src/app/data.service.ts(2,9): error TS2305: Module '"/home/../My_Websites/Youtube_sites/angular_2_playlist/ninja-directory/node_modules/@angular/http/http"' has no exported member 'HttpClient'.

为什么HttpClient服务代码的构造函数中不能注入服务?

4

1 回答 1

1

您需要在 app.component.ts 中调用您的服务

import {DataService} from './data.service.ts';

并提供您的app.component.ts文件

providers:[DataService]

有关更多信息,请参见 TutorialsPoint 示例

谢谢

于 2017-11-18T11:19:26.603 回答