我正在尝试使用Angular2执行AJAX请求,遵循官方文档:https://angular.io/docs/ts/latest/api/http/Http-class.html
我不断收到文件padding-top
Uncaught SyntaxError: Unexpected token <
我只是按照5分钟的教程进行操作,Hello World示例运行正常,但是当我尝试实现AJAX请求时,错误开始抛出。
导致此问题的原因是什么?如何解决?
我的代码:
angular2-polyfills.js:1243
答案 0 :(得分:1)
我必须包含http.min.js文件才能使其正常工作,以及在构造函数中使用Inject。
所以基本上我在index.html文件中添加了这个:
<script src="node_modules/angular2/bundles/http.min.js"></script>
在我的组件文件中,我更改了此
constructor(http: Http)
到此:
constructor(@Inject(Http) http: Http)
当然,我还必须从核心库中导入Inject
:
import {Component, Inject} from 'angular2/core';
答案 1 :(得分:1)
在定义组件时,您应该使用providers属性而不是viewProviders:
import {Component} from 'angular2/core';
import {Http, HTTP_PROVIDERS} from 'angular2/http';
@Component({
selector: 'my-app',
providers: [HTTP_PROVIDERS],
templateUrl: 'app/main.html'
})
export class LeadsList {
constructor(http: Http) {} // This line is causing the error.
}