web-dev-qa-db-ja.com

Angular 2はSystemJSが/ angular2 / httpモジュールを見つけられないことを示します

Angular 2のサービスを作成しました。

_import {Injectable} from "angular2/core";
import {Http} from "angular2/http";
import {TaskModel} from "./tasks.model"

@Injectable()
export class TasksDataService {

  tasks:Array<any>;

  constructor(http:Http) {

    this.tasks = [
      new TaskModel("Dishes"),
      new TaskModel("Cleaning the garage"),
      new TaskModel("Mow the grass")
    ];
  }

  getTasks():Array<any> {
    return this.tasks;
  }
}
_

プログラムを実行すると、ブラウザに次のように表示されます。

system.src.js:1049 GET http://localhost:3000/angular2/http.js 404 (Not Found)

チュートリアルを調べたところ、同じようにangular2/httpが含まれています。誰が何がうまくいっていないのか分かりますか?

17
Bas van Dijk

メインHTMLファイルにhttp.dev.jsファイルが含まれていることを確認する必要があります。

<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
<script src="node_modules/systemjs/dist/system.src.js"></script>
<script src="node_modules/rxjs/bundles/Rx.js"></script>
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
<script src="node_modules/angular2/bundles/router.dev.js"></script>
<script src="node_modules/angular2/bundles/http.dev.js"></script>

次に、HTTP = PROVIDERSをbootstrap関数の2番目のパラメーターとして追加する必要があります。

import { HTTP_PROVIDERS } from 'angular2/http';

bootstrap(MyMainComponent, [ HTTP_PROVIDERS ]);

それがあなたを助けることを願っています、ティエリー

35