0
나는 서비스 계층에서 HTTP를 사용해야하는 프로젝트에서 작업 중입니다. 나는 그러나, 나는 보통 때와 같이 생성자에서 HTTP를 주입하려고 아래 나는 다음과 같은 오류를 얻고있다 ionic build ios
을하려고 할 때 :의존성 주입으로 인해 빌드가 끊어짐
[08:54:51] Error: Error at /Users/zzz/Sites/angular-app/Test-Wondersign/.tmp/pages/home/home.ngfactory.ts:64:29
[08:54:51] Supplied parameters do not match any signature of call target.
[08:54:51] ngc failed
[08:54:51] ionic-app-script task: "build"
[08:54:51] Error: Error
home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { HomeService } from '../home/home.service';
@Component({
selector: 'page-home',
templateUrl: 'home.html',
providers: [HomeService]
})
export class HomePage {
users: any;
constructor(public navCtrl: NavController, public hs: HomeService) {
this.loadUsers();
}
loadUsers() {
this.hs.getUsers().then((response) => {
this.users = JSON.parse(response._body);
});
}
}
home.service. TS
import { Http,Headers, RequestOptions } from '@angular/http';
import {Inject} from '@angular/core';
export class HomeService {
url:string;
constructor(@Inject(Http) public http: Http) {
this.url ='https://jsonplaceholder.typicode.com/users';
}
getUsers(): Promise<any> {
return new Promise((resolve, reject) => {
this.http.get(this.url).subscribe(result => {
resolve(result);
});
});
}
}
home.html을
<ion-header>
<ion-navbar>
<ion-title>Home</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<div *ngFor="let user of users">
{{ user.name}} {{ user.email}}
</div>
</ion-content>
HomeService에 @ 주사 할 수있는 주석을 달지 않아야합니까? – toskv
@toskv, 제안 주셔서 감사합니다, 당신이 옳았어요! 그건 정확히 문제였습니다. – AnchovyLegend
나는 답을 만들었습니다. 정확한 답으로 표시해주세요. :) – toskv