Angular2 – 将http注入自定义服务时,“无法解析所有参数”错误

前端之家收集整理的这篇文章主要介绍了Angular2 – 将http注入自定义服务时,“无法解析所有参数”错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经构建了一个ErrorHandlerLogger,它是一个扩展ErrorHandler并将错误消息记录到远程存储库的服务。

ErrorHandlerLogger需要HttpModule提供的Angular http客户端。

在ErrorHandlerModule中,我导入HttpModule并将ErrorHandlerLogger定义为提供者。

在AppModule中我导入了ErrorHandlerModule。

当我启动应用程序时,我收到以下错误消息

Uncaught Error: Can't resolve all parameters for ErrorHandlerLogger: (?).

在这里我的代码

ErrorHandlerModule

import { NgModule,ErrorHandler } from '@angular/core';
import { HttpModule } from '@angular/http';

import {ErrorHandlerLogger} from './error-handler-logger';

@NgModule({
    declarations: [],exports: [],imports: [
        HttpModule
    ],providers: [
        {provide: ErrorHandler,useClass: ErrorHandlerLogger}
    ]
})
export class ErrorHandlerModule {}

ErrorHandlerLogger

import { ErrorHandler } from '@angular/core';
import { Http,Headers,RequestOptions,Response } from '@angular/http';
import { Observable }     from 'rxjs/Observable';
import './rxjs-operators';

export class ErrorHandlerLogger extends ErrorHandler {
    constructor(private http: Http) {
        super();
     }

    handleError(error) {
        // my logic
    }

}

的AppModule

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import {ErrorHandlerModule} from './error-manager/error-handler.module';

@NgModule({
  declarations: [
    AppComponent
  ],imports: [
    BrowserModule,FormsModule,HttpModule,routing,ErrorHandlerModule
  ],providers: [appRoutingProviders],bootstrap: [AppComponent]
})
export class AppModule { }

很感谢任何形式的帮助

@Injectable() // <<<=== required if the constructor has parameters 
export class ErrorHandlerLogger extends ErrorHandler {

猜你在找的Angularjs相关文章