节点NPM - 安装与安装-g

时间:2014-01-16 14:07:00

标签: javascript node.js npm

我是节点新手,并且对整个“安装”事情感到有些困惑。

installinstall -g之间有什么区别?

可以在任何地方访问安装了install -g的内容,或者是否可以将其提供给节点服务器而不是您的应用程序?有没有理由使用一个,而不是另一个?

干杯

3 个答案:

答案 0 :(得分:4)

来自node.js博客:

  • 如果您要在程序中安装要使用的东西,请使用require('whatever'),然后在项目的根目录下在本地安装。

  • 如果您要在shell中安装要在shell中使用的东西,请在命令行或其他东西上安装,以便它的二进制文件最终在您的PATH环境变量中。

例如,假设您要安装Grunt CLI。您可能会在多个项目中使用Grunt,因此您需要使用-g安装全球

现在假设你正在开发一个项目,你的项目需要一个像Express这样的模块。您可以cd到项目根目录并安装模块,不用 -g

Here是一个更深入的解释。

答案 1 :(得分:2)

install表示该模块将在本地 node_modules文件夹中创建,强烈建议您使用该应用程序所依赖的任何内容(用于版本控制,以及其他原因)。< / p>

install -g表示在您的计算机上安装全局模块。这通常仅 建议用于执行与应用程序执行无关的任务的模块。

简单示例包括Yeoman generatorsExpress generatorPhantomJS等。

有一篇关于它的官方博客文章here

答案 2 :(得分:1)

唯一的区别是npm install mod会将其安装在您的本地目录中。假设您正在使用'projectA'目录。所以

> npm install mod

将在

中安装“mod”
> projectA/node_modules/mod/

所以projectA中的任何.js文件只需说出require('mod')

即可使用此模块

而'npm install mod -g`将全局安装在用户的节点模块目录中。它将在

中的某个地方
> /usr/bin/npm/node_modules/modA

你可以在任何项目的任何地方使用这个模块,除此之外,如果'modA'中有任何终端命令。它可以从您的终端目录访问。

> modA --version
> version 1.1