サービス、コンポーネント、モデル用のAngular 2ライブラリを作成しようとしています。共有角度2ライブラリのNPM依存関係を解決できない
非常に便利なAngular 2ジェネレータライブラリhereを使用しています。
ライブラリのサービスは、ApolloクライアントとGraphQLをベースにしています。
しかし、ライブラリビルドをシンボリックリンクしてメインプロジェクトにインポートすると、Apolloの依存関係が解決されないようです。
私のアプリのビルドから、次の2つのエラーが発生します:Can't resolve 'apollo-angular/index'
とCan't resolve 'graphql-tag/index'
。これは、これらのライブラリが両方とも私のアプリケーションのnode_modules
にインストールされているにもかかわらず、Gulpビルドで私のライブラリのdist
ディレクトリには転送されていないように見えますが、さあ。
次のように私はまた私のライブラリのpackage.json
でのセットアップピアの依存関係に試してみました:
"peerDependencies": {
"@angular/core": "^4.0.0",
"rxjs": "^5.1.0",
"zone.js": "^0.8.4",
"graphql-tag": "^2.4.2",
"apollo-angular": "^0.13.0",
"apollo-client": "~1.9.0-1"
}
を加えて、私はすべてのものがインストールされているチェックするnpm install
を実行したとき、私はアポロクライアント1.9.0-1
があるにもかかわらずnpm WARN [email protected] requires a peer of [email protected]>=0.8.0 <=0.10.1 || >=1.0.0-rc <2.0.0 but none was installed.
とnpm WARN [email protected] requires a peer of [email protected]>=0.7.2 <=0.10.1 || >=1.0.0-beta <2.0.0 but none was installed.
を取得インストールされます。私は、私のアプリと私のライブラリの両方について、これらの警告をnpm install
で実行しています。
私のアプリでApollo Clientを直接(ライブラリではなく)使用すると、これらの警告にもかかわらず正常に動作します。
これらの問題を解決するには、誰かが正しい方向に向いていますか?
UPDATE:コメントで要求されたよう
、私はアポロクライアントは両方の私のアプリのnode_modules
フォルダに存在することを確認することができますし、私のライブラリの。いずれの場合もバージョンは1.9.0-1
です。 Apollo Clientは、Angular 2アプリケーションからGraphQLクエリを簡単に作成するために使用されます。
をパスしない定義するために試してみてください、だけでなく、プロジェクトレベルで?また、グローバルバージョンが許容範囲外です(<0.8.0 || 2.0.0+)。おそらくそれは何らかの形でプロジェクトバージョンで見られているでしょう。 node_modulesフォルダをチェックしてnpmからプロジェクトレベルにあるものがあればそれを確認し、そのフィードバックを追加してください。 – JGFMK