私はフルとライトの2つのバージョンで配布されているノードライブラリに取り組んでいます。 ライトバージョンは完全なものよりも短い依存関係のリストを使用しており、 私はそれらを異なるエントリーポイントを持つ2つのウェブパック設定を使ってビルドします。 問題は、package.jsonには「依存関係」リストが1つしかないため、実際にライトバージョンが多くの依存関係を必要としなくても、コンシューマがライブラリをインストールしてもそれらのすべてをフェッチするということです。これを解決するアプローチは何ですか?異なる依存関係を持つnpmモジュールの2つのバージョンを公開する
1
A
答えて
1
2つの別々のパッケージを作成する必要があると思います。可能であれば、 "lite"バージョンを "完全"バージョンの依存性にして、オーバーラップ量を制限します。
その後、scoped packages、どちらのバージョンに名前を付けて公開することもできます
"name" : "@your-package/full"
そして:
"name" : "@your-package/lite"
を別のアプローチは、例えばSequelizeは、そのデータベースドライバで何を行うには、次のようになりますしませんユーザーが特定のドライバを使用しようとすると、その特定のドライバパッケージを最初にインストールする必要があるというメッセージが表示されます。あなたのケースでは、ユーザーがいくつかの "フル"機能を使用しようとしたが、 "lite"バージョンを使用していることが検出された場合は、フルバージョンのインストール方法を示してください。
関連する問題
- 1. SBT:異なる依存関係を持つ2つのScalaバージョンのクロスビルドプロジェクト
- 2. 類似の依存関係を持つ2つの異なるモジュールを持つguiceインジェクタを作成する
- 3. 2つの依存関係React依存関係の異なるバージョンを必要とする
- 4. 公開ソースに近いソースの依存関係を持つモジュールを公開することは法律です
- 5. 同じ依存関係の異なるバージョンを持つnugetパッケージのazure関数
- 6. 外部依存関係を持つAndroidライブラリを公開
- 7. 依存関係の異なるバージョン
- 8. Cocoapodの依存関係の2つのバージョンを使用する
- 9. 異なるテストケース間の依存関係を持つphpunitスキップテスト
- 10. 異なるバージョンの1つの依存関係を持つパッケージをビルドおよびデプロイする方法は?
- 11. 依存関係を持つHaskellモジュールをロードする
- 12. pvt npmモジュールのサブnpm依存関係をインストールできない
- 13. npmに1つのモジュールをインストールする際に特定のバージョンの依存関係をインストールする方法
- 14. Maven + SLF4J:2つの異なるSLF4Jバージョンを必要とする2つの異なる依存関係を使用する場合のバージョンの競合
- 15. 依存関係を持つjspm経由でnpmパッケージをインストール
- 16. 依存関係とテストの依存関係を持つjarを作成する
- 17. すべての依存関係をローカルのnpmレジストリに公開する
- 18. 相互依存関係を持つオブジェクトを開始する
- 19. 依存関係を持つ2つのtsconfigファイル
- 20. 独自の依存関係を持つAutofacモジュール
- 21. 依存関係を持つオブジェクトのデシリアライズ
- 22. ジョブジョブの依存関係を持つトルクジョブ
- 23. Mavenの依存関係を持つjava.lang.NoClassDefFoundError
- 24. 異なるスコープの依存関係内のMaven依存関係
- 25. 2つのモジュールに同じ依存関係があります
- 26. モジュールと依存関係の差異
- 27. Angular 2 npmインストール依存関係が見つかりません
- 28. 依存関係の異なるファイル名を持つartifactIdの使い方
- 29. 異なる作曲家の依存関係を持つ別のブランチにチェックアウト
- 30. NPMモジュールの公開時に外部.d.ts依存関係を管理する方法