Saya punya pertanyaan serupa dengan ini , tetapi tidak persis sama.
Saya ingin agar pengguna aplikasi saya menginstalnya dengan dependensi apa pun yang diperlukan untuk cara dia ingin menggunakannya. Jadi, misalnya, jika mereka ingin tetap menggunakan MongoDB, maka hanya perpustakaan yang berhubungan dengan Mongo yang akan diinstal, tetapi jika mereka ingin tetap menggunakan Redis, maka hanya perpustakaan yang terkait dengan Redis yang akan diinstal. Saya tidak ingin membuat mereka mengunduh dan menginstal perpustakaan yang tidak akan mereka gunakan.
Saya tahu saya bisa melakukan itu untuk tujuan pengembangan devDependencies
, tetapi ini lebih jauh dari itu. Seperti jawaban dalam pertanyaan di atas, ini lebih terkait dengan profil Python setuptools
extras_require
dan Clojure leiningen
. Ada yang seperti itu di npm? Saya benar-benar merasa devDependencies
harus menjadi dev
profil cara yang lebih fleksibel untuk menentukan dependensi.
package.json
yang telah diselesaikan di manajer paket lain.
MyPackage-Core
MyPackage-Db-Mongo
MyPackage-Db-Redis
dll ... banyak cara orang melakukan modul bower yang dimaksudkan untuk memperpanjang sudut .