2017-03-08 92 views
0

我一直在安裝Angular2快速入門(https://angular.io/guide/quickstart)。Angular2快速入門:找不到Http

我有以下模塊:

  • 應用程序/
    • 組件/
      • 模塊1/
        • module1.component.ts
        • module1.html
    • 服務/
      • request.service.ts
    • app.component.ts
    • app.module.ts
    • main.ts

請求服務正在從@ angular/Http導入Http。 請求服務是在app.module.ts中導入的。

當啓動與命令應用NPM啓動我有404錯誤 「/ @角/ HTTP」。我檢查了@角/目錄和HTTP模塊被加載,(依賴線也是在的package.json文件,我知道這是在以前版本的快速入門的問題)

enter image description here

請求服務不會引發錯誤:

import { Injectable } from '@angular/core'; 
 
import { Http } from '@angular/Http'; 
 
import { Observable } from 'rxjs/Rx'; 
 
import 'rxjs/add/operator/map'; 
 

 
@Injectable() 
 

 
export class RequestService { 
 

 
\t constructor(private http:Http) {} 
 

 
\t sendRequest(type:string , url:string, parameters:Object) : void { 
 
\t \t // some code here 
 
\t } 
 

 
}

而且個app.module.ts看起來很簡單

import { NgModule }  from '@angular/core'; 
 
import { BrowserModule } from '@angular/platform-browser'; 
 

 
import { AppComponent } from './app.component'; 
 

 
/* SERVICES */ 
 

 
import { RequestService } from './services/request.service'; 
 

 
@NgModule({ 
 
    imports: [ BrowserModule ], 
 
    declarations: [ AppComponent ], 
 
    bootstrap: [ AppComponent ], 
 
    providers: [ RequestService ] 
 
}) 
 
export class AppModule { }

我真的不知道爲什麼HTTP模塊將不會加載因爲消息來源是在我@angular目錄中。我錯過了什麼嗎?我應該在其他地方宣佈某些東西嗎?

非常感謝!

回答

0

你缺少HttpModuleapp.module

import { HttpModule } from '@angular/http'; 

@NgModule({ 
    imports: [ BrowserModule, HttpModule ], // add HttpModule 
    declarations: [ AppComponent ], 
    bootstrap: [ AppComponent ], 
    providers: [ RequestService ] 
}) 
+0

做了這樣的回答可以幫助您? :) – Alex