我希望仅在您设置测试环境时安装节点模块。如果您运行devDependencies
andoptionalDependencies
仍将安装npm install <the-module>
。相反,我会将这些存储在testDependencies
. 要做到这一点,如果有一个 *NIX 单线从 JSON 对象中获取密钥并将其通过管道传递到命令中,那就太好了npm install
。这可以用于 travisci 并使其默认安装不会安装这些额外的库。
您如何读取 package.json 文件、提取密钥以获取模块名称并运行npm install <keys>
?package.json 看起来很像这样:
{
"name": "the-module",
"dependencies": {
"express": "2.x"
},
"devDependencies": {
"ejs": ">= 0.6.1"
},
"testDependencies": {
"mocha": ">= 0.8.1",
"chai": ">= 0.3.3",
"sinon": ">= 1.3.1"
}
}
要运行的命令是这样的:
npm install mocha chai sinon
试图做这样的事情:
npm install $(read-json ./package.json | extract-keys)