我的nodejs项目使用了一些库。一个库pouchdb
将尝试安装相当多的依赖项。有一个名为leveldown
,它将尝试从Internet下载Node.js标头,然后从头开始重建所有内容。实际上我根本不需要leveldown
。但他们的社区建议我私下分叉pouchdb
并修改package.json以排除我不需要的任何依赖。
这是我对npm / yarn人的一般性问题。在运行npm install
或yarn install
?
答案 0 :(得分:5)
不,它无法从安装中排除子依赖项。
但是,在您的情况下,您不需要私下分叉pouchdb
。 PouchDB具有作为npm包发布的自定义构建:https://pouchdb.com/custom.html。
如果要安装pouchdb以便在浏览器中使用npm install pouchdb-browser
。
如果您正在使用其他存储适配器(如内存适配器),则可能需要npm install pouchdb-core
。请注意,pouchdb-core
并未包含pouchdb
附带的某些功能。
query()
或viewCleanup()
,则需要安装pouchdb-mapreduce
并将其作为插件传递。replicate()
和sync()
,则需要安装pouchdb-replication
并将其作为插件传递。使用示例:
const PouchDB = require('pouchdb-core')
.plugin(require(WHATEVER_STORAGE_ADAPTER_YOU_ARE_USING))
.plugin(require('pouchdb-mapreduce'))
.plugin(require('pouchdb-replication'));