2015-12-25 18 views
14

Tôi bắt đầu học Angular2 bằng cách theo dõi quickstart chúng cung cấp trong trang của họ và giờ tôi đang cố gắng thực hiện một số Http requests. Nhưng bất cứ khi nào tôi bootstrap thành phần, Chrome tiếp tục đem lại cho tôi lỗi này:Lỗi Angular2 Http

Uncaught SyntaxError: Unexpected token <   http:1 
Uncaught SyntaxError: Unexpected token <   angular2-polyfills.js:138 
    Evaluating http://localhost:3000/angular2/http 
    Error loading http://localhost:3000/app/boot.js 

Đây là thành phần:

import {Component} from 'angular2/core'; 
import {HTTP_PROVIDERS, Http} from 'angular2/http'; 

@Component({ 
    selector: 'users', 
    providers: [HTTP_PROVIDERS], 
    templateUrl: 'app/views/users.html' 
}) 
export class UsersComponent { 

    people: Object[]; 
    constructor(http: Http) { 
    http.get('http://192.168.56.101/api/test').subscribe(res => { 
     this.people = res.json(); 
     console.log(this.people); 
    }); 
    } 
} 

Và bootstrapping:

import {bootstrap} from 'angular2/platform/browser' 
import {UsersComponent} from './components/users' 

bootstrap(UsersComponent, [HTTP_PROVIDERS]); 

Quan điểm chỉ {{people}} là.

TypeScript đang biên dịch OK. Tôi thậm chí không biết những gì đang thất bại!

+2

Xem http://stackoverflow.com/a/34402203/4933038 –

Trả lời

26

Tài liệu thiếu phần đó. Router và Http cần được thêm vào index.html. Lỗi dễ dàng để thực hiện

+0

đã làm việc cho tôi !! – noor

+0

vui lòng nhập mã số .. – albanx

+1

lưu ý nhanh, các thẻ tập lệnh là: colbyJax

7

Trước tiên, nếu bạn tiêm nhà cung cấp trên bootstrap, bạn không phải thực hiện lại nó trong thành phần.

Thứ hai, bạn có bao gồm http.js trong số index.html của mình không?

Và thứ ba, bạn gặp lỗi trong mã của mình. Nên có this.http.get() không http.get()

1

khi khởi động, bạn không phải nhập phụ thuộc HTTP_PROVIDERS. vì vậy hãy thử: -

import {HTTP_PROVIDERS} from 'angular2/http'; 
import {bootstrap} from 'angular2/platform/browser' 
import {UsersComponent} from './components/users' 

bootstrap(UsersComponent, [HTTP_PROVIDERS]); 

và trong file index bạn cần phải thêm: -

<script src="node_modules/angular2/bundles/router.dev.js"></script> 
<script src="https://code.angularjs.org/2.0.0-beta.11/http.dev.js"></script> 

cho việc định tuyến và http

+0

đẹp & được cập nhật. –

Các vấn đề liên quan