に別のサービスでサービスを利用するにはどうすれば2つのサービス1.接続サービスおよび2.販売・サービスイオン2
接続サービスは、IPアドレスとポートの情報が含まれているを使用していました。私は最初のサービスから販売サービスにipとポートを取得する必要があります。私はjsonを取得するために使用されるURLを完了することができます。ここでは、コード部分を削除
、更新#で私のレポを見てください、私は
2 007892 error EXCEPTION: No provider for t! 3 007893 error ORIGINAL STACKTRACE: 4 007893 error Error: No provider for t! at e.Error (native) at e [as constructor] (http://192.168.1.48:8100/build/main.js:5:4700) at e [as constructor] (http://192.168.1.48:8100/build/main.js:5:9276) at new e (http://192.168.1.48:8100/build/main.js:5:9604) at t._throwOrNull (http://192.168.1.48:8100/build/main.js:5:26583) at t._getByKeyDefault (http://192.168.1.48:8100/build/main.js:5:26939) at t._getByKey (http://192.168.1.48:8100/build/main.js:5:26494) at t.get (http://192.168.1.48:8100/build/main.js:5:22859) at e.get (http://192.168.1.48:8100/build/main.js:7:14254) at e.get (http://192.168.1.48:8100/build/main.js:8:1442) 5 007895 error Uncaught Error: No provider for t!, http://192.168.1.48:8100/build/polyfills.js, Line: 3
マイイオン性情報
を得ている3
エラー
コルドバCLI:6.3.1
ガルプ版:ローカルCLIバージョン3.9.1
ガルプ:
イオンFrameworkのバージョン:2.0.0-rc.1
イオンCLIバージョン:2.1.0
イオンのApp Libのバージョン:2.1.0ベータ。 1
IOS-デプロイバージョン:インストールされていない
IOS-SIMバージョン:インストールされていない
OS:MacのOS Xエルキャピタン
ノードバージョン:v6.7.0
Xcodeのバージョン:7.3.1 Xcodeのビルドバージョン7D1014
スタックトレースから私はプロバイダのようなものを使用する必要があることを理解しています:[ConnectionService]しかし、私はSales-Serviceで提供する方法を知らない。どんな助言も役に立つでしょう。ありがとうございました。 [ConnectionService、SalesService] // これはに動作します:
- プロバイダの下に与えられたとして、私はapp.module.tsファイル内のサービスの両方を注入しようとした
更新#1
ありがとう@jmilloyと@カマロン。
更新#は
2は、私は新しいプロジェクトを作成し、私は
FirstServiceなしプロバイダーを言うエラーが複製されました!
が、私の元のプロジェクトで
、エラーがConnectionServiceなしプロバイダーを言う必要があります!
//ではなく、それは
トンなしプロバイダーを言います! // tとは何を指していますか?
私は私のレポで私のプロジェクトをアップロードしたアップデート#3 。見てみな。
This is my original project repo //解決済み、npmキャッシュをクリーニングしなければならなかった。
This is my new project repo //問題が
import { Injectable, Inject } from '@angular/core';
import { Http, Headers } from '@angular/http';
import { ConnectionService } from './connection-service';
import 'rxjs/add/operator/map';
@Injectable()
export class SalesService {
connection:ConnectionService;
constructor(public http: Http, @Inject(ConnectionService) connection:ConnectionService) {
this.connection = connection;
this.http = http;
this.connection.getConnectionInfo();
}
getSalesData(): any {
return this.http.get("http://"+this.connection.ip+":"+this.connection.port+"/DasherAPI/public/api2/getCompanySalesFull");
}
}
がInject
インポートを忘れてはいけない、コンストラクタに@Inject
をチェックしてみ
「ionicBootstrap」コールはどこにもありますか?私はAngular/Ionicで始まっていますが、私たちのapp.tsには 'ionicBootstrap(AppModule、[ConnectionService、SalesService])'があります。あるいは 'bootService'を' bootstrap'リストに追加することができますか? – jmilloy
@jmilloy返信いただきありがとうございます。更新された質問をご覧ください。更新#1 –