2016-09-08 36 views
54

Vì vậy, gần đây tôi đã cập nhật lên phiên bản mới nhất của Angular2, RC.6. Thay đổi đột phá lớn nhất có vẻ là toàn bộ bootstrapping (bằng cách "giới thiệu" ngModule).Không có nhà cung cấp nào cho ConnectionBackend

@NgModule({ 
    imports: [HttpModule, BrowserModule, FormsModule], 
    schemas: [CUSTOM_ELEMENTS_SCHEMA], 
    declarations: [AppComponent, ...], 
    providers: [FrameService, Http, { provide: $WINDOW, useValue: window }], 
    bootstrap: [AppComponent] 
}) 
class AppModule { 

} 

platformBrowserDynamic().bootstrapModule(AppModule); 

Tuy nhiên sau rất nhiều nước mắt, mồ hôi và cầu xin cho tất cả các vị thần tôi có thể đưa ra ... Tôi vẫn còn với những gì là hy vọng các lỗi cuối cùng trong một loạt các nhiều:

Không có nhà cung cấp nào cho ConnectionBackend!

Tại thời điểm này tôi đang xé ra những dòng tóc cuối cùng mà tôi đã để lại khi tôi không biết gì về điểm "những gì tôi bị thiếu".

Trân trọng!

+2

Có vẻ đúng. Bạn không nên cần 'Http' trong' provider' vì nó đã được cung cấp bởi 'import. [HttpModule] '. –

Trả lời

95

Http là không cần thiết trong

providers: [FrameService, Http, { provide: $WINDOW, useValue: window }], 

HttpModule trong

imports: [HttpModule, BrowserModule, FormsModule], 

cung cấp nó rồi.

+1

Họ nhận thức được vấn đề này và không ngừng cải thiện. Tôi giả định rằng sau khi bản thân Angular2 đã ổn định, họ sẽ làm việc nhiều hơn nữa để cải thiện trải nghiệm của nhà phát triển với các lỗi tốt hơn và hỗ trợ công cụ thích hợp như kiểm tra các mẫu lỗi cú pháp và các vấn đề khác, nhà thiết kế và các công cụ khác. –

1

Trong app.module.ts thêm: mô-đun

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

Và nhập khẩu:

imports: [ 
    ... 
    HttpModule 
    ... 
    ], 
0

tôi loại bỏ 'Http' từ nhập khẩu này như thế này và nó làm việc cho tôi. Ngoài ra, BrowserModule phải đến trước HttpModule trong nhập khẩu modume.

Trước:

nhập {HttpModule, Http} từ '@ angular/http';

Sau:

nhập {HttpModule} từ '@ angular/http';

+0

Xác định kịch bản ví dụ từ "một số tình huống" được đề xuất của bạn ... nếu không câu trả lời của bạn đã được cung cấp bởi [Günter Zöchbauer] (https://stackoverflow.com/users/217408/g%c3%bcnter-z%c3% b6chbauer) và có thể sẽ bị xóa trong tương lai gần. Chúng tôi ở đây để tìm hiểu và không đọc cùng một thông tin hai lần (đọc: tìm kiếm đại diện). – ZF007

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