使用package.json在全局和本地安装依赖项

使用npm,我们可以使用-goption 在全局安装模块。我们如何在package.json文件中执行此操作?

假设这些是我在package.json文件中的依赖项

"dependencies": {

"mongoose": "1.4.0",

"node.io" : "0.3.3",

"jquery" : "1.5.1",

"jsdom" : "0.2.0",

"cron" : "0.1.2"

}

当我运行时npm install,我只想node.io全局安装,其余的应该本地安装。有这个选项吗?

回答:

您可能不需要或不需要这样做。您可能想要做的就是将那些用于构建/测试等命令依赖关系的类型放在devDependenciespackage.json

的部分中。

例如:

npm i --save-dev mocha # Install test runner locally

npm i --save-dev babel # Install current babel locally

然后在package.json中:

// devDependencies has mocha and babel now

"scripts": {

"test": "mocha",

"build": "babel -d lib src",

"prepublish": "babel -d lib src"

}

然后在命令提示符下运行:

npm run build # finds babel

npm test # finds mocha

npm publish # will run babel first

但是, 如果您 确实 要全局安装,则可以在package.json的脚本部分中添加预安装:

"scripts": {

"preinstall": "npm i -g themodule"

}

所以实际上我的npm install再次执行npm install ..这很奇怪,但似乎可以正常工作。

如果您使用最常见的安装npm程序来安装全局Node软件包,则可能会遇到问题sudo。一种选择是更改您的npm配置,因此没有必要:

npm config set prefix ~/npm,通过将$ HOME / npm / bin附加export

PATH=$HOME/npm/bin:$PATH到$ PATH来将其添加到$ PATH中~/.bashrc

以上是 使用package.json在全局和本地安装依赖项 的全部内容, 来源链接: utcz.com/qa/429044.html

回到顶部