2017-07-26 18 views
0

サービス、コンポーネント、モデル用の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

をパスしない定義するために試してみてください、だけでなく、プロジェクトレベルで?また、グローバルバージョンが許容範囲外です(<0.8.0 || 2.0.0+)。おそらくそれは何らかの形でプロジェクトバージョンで見られているでしょう。 node_modulesフォルダをチェックしてnpmからプロジェクトレベルにあるものがあればそれを確認し、そのフィードバックを追加してください。 – JGFMK

答えて

1

this問題のために発生することがあります。

は、おそらくあなたは、おそらく世界的にそれをインストールしました。..アポロクライアントが何をするかわからあなたのTSに

"compilerOptions" : { 

    ... 

    "paths": { 
    "@angular/*": ["../node_modules/@angular/*"], 
    "apollo-client": ["../node_modules/apollo-client"], 
    "apollo-client-rxjs": ["../node_modules/apollo-angular/node_modules/apollo-client-rxjs"] 
    } 
} 
関連する問題