强制忽略 npm/yarn 安装的一个依赖项的依赖项
Force ignore one dependency's dependency from being installed by npm/yarn
我的 nodejs 项目使用了一些库。一个库 pouchdb
will try to install quite a lot of dependencies. There is one called leveldown
,它将尝试从 Internet 下载 Node.js header,然后从头开始重建所有内容。实际上我根本不需要 leveldown
。但是他们的社区建议我私下分叉 pouchdb
并修改 package.json 以排除我不需要的任何依赖项。
这是我对 npm/yarn 人的一般性问题。是否可以防止下载特定库,而 运行 npm install
或 yarn install
?
不,无法从安装中排除子依赖项。
但是,在您的情况下,您不需要私下分叉 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'));
我的 nodejs 项目使用了一些库。一个库 pouchdb
will try to install quite a lot of dependencies. There is one called leveldown
,它将尝试从 Internet 下载 Node.js header,然后从头开始重建所有内容。实际上我根本不需要 leveldown
。但是他们的社区建议我私下分叉 pouchdb
并修改 package.json 以排除我不需要的任何依赖项。
这是我对 npm/yarn 人的一般性问题。是否可以防止下载特定库,而 运行 npm install
或 yarn install
?
不,无法从安装中排除子依赖项。
但是,在您的情况下,您不需要私下分叉 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'));