2017-04-21 35 views
0

你好我想這對於使用HTTP最後兩天讀取本地JSON文件,不知道問題出在哪裏角2服務不能夠解決所有的參數

我的服務文件

import {Injectable} from '@angular/core'; 

import { Http,Response } from '@angular/http'; 
import { Observable } from 'rxjs/Observable' 
import 'rxjs/add/operator/map' 
import 'rxjs/add/operator/catch' 

export class AcquirerService{ 





    private _url : string = "agent_output1.json"; 



    constructor(private _http : Http){} 

    getAcquirer(){ 

    return this._http.get(this._url).subscribe(
     (data) => console.log(data) 

    ) 
    // .map((response:Response) => response.json()); 


    } 

我的組件文件

import { Component ,OnInit} from '@angular/core'; 
import {AcquirerService} from '../services/acquirer.service' 


@Component({ 

    selector : 'acquirer-message', 
    templateUrl: '../templates/acquirer.component.html', 
    providers :[AcquirerService] 

}) 

export class AcquirerComponent implements OnInit{ 

    acquirer_response ; 
constructor(private _acquirerService : AcquirerService){ 


} 

    ngOnInit(){ 

    this._acquirerService.getAcquirer(); 
    // .subscribe(resAcquirerData => this.acquirer_response = resAcquirerData); 


} 

} 

我正的錯誤是

metadata_resolver.js:972 Uncaught 
SyntaxError {__zone_symbol__error: Error: Can't resolve all parameters for AcquirerService: (?) 

我main.ts文件

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 
import { enableProdMode } from '@angular/core'; 
import { environment } from './environments/environment'; 
import { AppModule } from './app/app.module'; 
import {HttpModule} from '@angular/http' 


if (environment.production) { 
    enableProdMode(); 
} 

platformBrowserDynamic().bootstrapModule(AppModule); 

我的應用程序模塊文件

import { BrowserModule } from '@angular/platform-browser'; 
import { NgModule } from '@angular/core'; 
import { FormsModule } from '@angular/forms'; 
import { HttpModule,JsonpModule } from '@angular/http'; 

import { AppComponent } from './components/app.component'; 
import {AcquirerComponent} from "./components/acquirer.component"; 
import {IssuerComponent} from "./components/issuer.component"; 

@NgModule({ 
    declarations: [ 
    AppComponent,AcquirerComponent,IssuerComponent 
    ], 
    imports: [ 
    BrowserModule, 
    FormsModule, 
    HttpModule, 
    JsonpModule 
    ], 
    providers: [], 
    bootstrap: [AppComponent,HttpModule] 
}) 
export class AppModule { } 

任何幫助將非常感激我新的角度

+0

在你的服務,你不能返回控制檯日誌 – Kilmazing

回答

1

添加AcquirerService到供應商

@NgModule({ 
declarations: [ 
AppComponent,AcquirerComponent,IssuerComponent 
], 
imports: [ 
BrowserModule, 
FormsModule, 
HttpModule, 
JsonpModule 
], 
providers: [AcquirerService], 
bootstrap: [AppComponent,HttpModule] 
}) 
export class AppModule { } 

plus在Acqui之前加上@Injectable() rerService

@Injectable() 
export class AcquirerService{ ... } 
+0

感謝它的工作服務名稱前加上@Injectable()

0

在您的服務文件中,您導入了Injectable但未使用它。這樣

@Injectable() 
export class AcquirerService{ 
     //your code here 

} 
相關問題