การฉีดพึ่งพา - ไม่พบบริการ http ของ Angular2
ไม่สามารถทำให้บริการ http ง่าย ๆ ทำงานใน angular2 ได้ ฉันเพียงแต่ได้รับ 404 บนบริการด้วยเหตุผลบางอย่าง มันยังไม่มีฟังก์ชันการทำงานใด ๆ แต่ดูเหมือนว่า DI จะไม่ทำงาน
ทันทีที่ฉันเพิ่ม TestService เมื่อบูตแอปพลิเคชัน ฉันได้รับข้อความดังต่อไปนี้ GET http://127.0.0.1:8080/testService 404 (ไม่พบ)
index.html
<!DOCTYPE html>
<html lang="en-GB">
<head>
<title>AngularJS 2 Tutorial Series</title>
<script src="https://code.angularjs.org/2.0.0-beta.0/angular2-polyfills.js"></script>
<script src="https://code.angularjs.org/tools/system.js"></script>
<script src="https://code.angularjs.org/tools/typescript.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.1/Rx.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.1/angular2.dev.js"></script>
<script>
System.config({
transpiler: 'typescript',
typescriptOptions: { emitDecoratorMetadata: true }
});
System.import('./app/app.ts');
</script>
</head>
<body>
<my-app>loading...</my-app>
</body>
</html>
แอพ.ที
import {bootstrap} from 'angular2/platform/browser';
import {Component} from 'angular2/core';
import {Injectable} from 'angular2/core'
import {TestService} from 'testService';
@Component({
selector: 'my-app',
template: '<h1>My First Angular 2 App</h1>',
})
class AppComponent {
}
bootstrap(AppComponent, [TestService]);
TestService.ts
import {Http} from 'angular2/http';
import {Injectable} from 'angular2/core';
@Injectable()
export class TestService {
constructor(public http: Http){
}
}
คำตอบ #1
ฉันเพิ่งเจอเรื่องนี้ แก้ไขโดยการเพิ่มการอ้างอิงสคริปต์ไปยังชุด HTTP:
<script src="node_modules/angular2/bundles/http.dev.js"></script>
ลองมันหลังจากจำได้ว่าฉันได้เพิ่มทรัพยากรที่คล้ายกันหลังจากการใช้งานการ Routing หวังว่านี่จะช่วยใครสักคน!
