首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角4-使用HttpModule我得到了错误“没有提供ConnectionBackend!”

角4-使用HttpModule我得到了错误“没有提供ConnectionBackend!”
EN

Stack Overflow用户
提问于 2017-09-14 15:39:37
回答 1查看 707关注 0票数 0

我是Angular4 (和TypeScript)的新手,我一直在犯这个错误:

我的app.module.ts设置如下:

代码语言:javascript
复制
import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';

import { AppComponent }  from './app.component';
import { CustomerListComponent }  from './Customer-List/customer-list.component';
import { CustomerDetailsComponent }  from './Customer-Details/customer-details.component';
import { DataService } from './services/data.service';


@NgModule({
  imports:      [ BrowserModule, FormsModule, HttpModule ],
  declarations: [ AppComponent, CustomerListComponent, CustomerDetailsComponent ],
  providers: [ DataService ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

我有一个服务(称为DataService),它在以下代码中使用Http模块:

代码语言:javascript
复制
    import { Injectable } from '@angular/core';
    import { Http, Response, RequestOptions, Headers } from '@angular/http';
    import { CreateTestCustomers } from '../data/test-data';
    import { Customer } from '../Models/customerModel';

    @Injectable()
    export class DataService {

        private customersUrl = 'http://localhost:52740/api/Customers/';

        constructor(
            private http : Http
        ) { }

        getCustomersP() : Promise<Customer[]>{
                const customers = CreateTestCustomers();

                return this.http.get(this.customersUrl)
                    .toPromise()
                    .then(response => {
                        const custs = response.json().data as Customer[];
                        return custs;
                    }, error => {
                        return Promise.reject('Something bad happened, please check the console');
                    },);
            }
    }

当我试图编译我的应用程序时,我会发现一个奇怪的错误:

代码语言:javascript
复制
Unhandled Promise rejection: No provider for ConnectionBackend! ; Zone: <root> ; Task: Promise.then ; Value: Error: No provider for ConnectionBackend! Error: No provider for ConnectionBackend!
   at ReflectiveInjector_.prototype._throwOrNull (eval code:2681:13)
   at ReflectiveInjector_.prototype._getByKeyDefault (eval code:2720:13)
   at ReflectiveInjector_.prototype._getByKey (eval code:2652:13)
   at ReflectiveInjector_.prototype.get (eval code:2521:9)
   at resolveNgModuleDep (eval code:9513:5)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)
   at resolveNgModuleDep (eval code:9508:13)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)
zone.js (661,17)
   "Unhandled Promise rejection:"
   "No provider for ConnectionBackend!"
   "; Zone:"
   "<root>"
   "; Task:"
   "Promise.then"
   "; Value:"
   {
      [functions]: ,
      __proto__: { },
      __zone_symbol__currentTask: { },
      description: "No provider for ConnectionBackend!",
      injectors: [ ],
      keys: [ ],
      message: "No provider for ConnectionBackend!",
      name: "Error",
      ngDebugContext: { },
      ngOriginalError: undefined,
      stack: "Error: No provider for ConnectionBackend!
   at ReflectiveInjector_.prototype._throwOrNull (eval code:2681:13)
   at ReflectiveInjector_.prototype._getByKeyDefault (eval code:2720:13)
   at ReflectiveInjector_.prototype._getByKey (eval code:2652:13)
   at ReflectiveInjector_.prototype.get (eval code:2521:9)
   at resolveNgModuleDep (eval code:9513:5)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)
   at resolveNgModuleDep (eval code:9508:13)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)"
   }
   "Error: No provider for ConnectionBackend!
   at ReflectiveInjector_.prototype._throwOrNull (eval code:2681:13)
   at ReflectiveInjector_.prototype._getByKeyDefault (eval code:2720:13)
   at ReflectiveInjector_.prototype._getByKey (eval code:2652:13)
   at ReflectiveInjector_.prototype.get (eval code:2521:9)
   at resolveNgModuleDep (eval code:9513:5)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)
   at resolveNgModuleDep (eval code:9508:13)
   at _createClass (eval code:9555:13)
   at _createProviderInstance$1 (eval code:9524:13)"

以前有人遇到过这种情况吗?在线上的每件事似乎都提到了角2,而且对它的任何修正似乎都没有帮助角4。

我看过这篇文章,但它没有得到解答--我的问题看起来很相似:angular 4 Error: Uncaught (in promise): Error: No provider for ConnectionBackend! while injecting Jsonp

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-20 10:50:04

与其说是一个答案,不如说是一个解决办法。我搭建了一个新的项目,并将我的组件一个接一个地加入进来,以解决这个问题。不知道原来的项目是怎么回事。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46223284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档