問題タブ [npm-link]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - npm: node_modules に推移的な依存関係がありません
2 つのローカル npm プロジェクトがA
あり、B
. A
に依存していて、ファイルreact
に依存関係としてリストされているとしましょう。package.json
で利用できるnpm link
ようにするために使用しA
ますB
。
B
とに依存しA
ますreact
。npm link A
のローカルバージョンを使用していましたA
。A
ただし、 は既に に依存していることを知っているので、 のファイルにreact
は含めません。私が呼び出すと、npm がフォルダーに推移的な依存関係を含めることが期待されます。ただし、さん自身のファイルに推移的な依存関係を含めない限り、 さんのコードで見つけることも、 さんのコードで使用することもできません。react
package.json
B
npm install
node_modules
react
B
B
package.json
のような他のモジュールを含めると、またはのreact
ような推移的な依存関係もフォルダーに解決されます。fbjs
encoding
node_modules
では、どこが間違っているのでしょうか。/ の依存関係がのフォルダーA
に含まれていないのはなぜですか?B
node_modules
angular - 共有ライブラリを使用してAngularライブラリを「npmリンク」する方法は?
Angular 4.x アプリケーション (アプリ) 用に、現在 AoT と互換性のないライブラリ (「Lib」など) を作成しました。
App と Lib は両方とも、サードパーティのライブラリ (「X」など) に依存しています。「<strong>npm リンク」を使用してアプリで Lib を開発すると、X が App/node_modules と Lib/node_modules の両方にあるため、いくつかの動作が停止し、実行時に X からのプロバイダーのインスタンスが複数あるように見えます。 Lib/node_modules から X を削除すると、すべて正常に動作します。これはプロバイダーの一般的な制限であり、特に X とは関係がないと思いますが、私の場合、X は実際には ngx-translate です。
私が見つけた「最もクリーンな」回避策は、Lib ではなく App に対してのみ「npm install」を実行することです。このように、ほとんどの依存関係 (X を含む) はアプリの node_modules にのみ存在し、アプリケーションは正常に動作します。ただし、Lib の開発時に IDE の問題が発生します。2) 代わりに、アプリのプロジェクト (node_modules\Lib で直接) から Lib を開発すると、バージョン管理が正しく統合されません (たとえば、チェックアウトできません)。
どうもありがとう!