用npm安装模块

用npm安装模块有两种方式:本地安装和全局安装。如果你需要用Node.js的require来获取依赖,那么你需要的是本地安装,也就是默认的方式。如果你需要把它当做诸如gruntCLI这样的命令行工具,那就要用全局安装。

本地安装

本地安装的命令:

    npm install <package_name>

这个命令的结果就是在你命令行的当前目录下创建一个叫node_modules的文件夹,然后把安装的代码放到这个文件夹下面。

看看成功没有

install之后,如果没有异常的话,安装的代码将会出现的node_modules的目录下。查看一下成功了没有:

    ls node_modules

如果是windows的话,是

    dir node_modules

动手尝试一下

安装一个叫做underscore的包:

    npm install underscore
    ls node_modules

如果没有问题的话,就能在一堆文件里面找到underscore。如果当前文件夹下面没有package.json,那么就会自动下载到最新的版本,如果有package.json,那么可能会根据package.json下载指定的版本。

使用安装好的包

一旦这个包安装到了node_modules文件下下面,你就能在你的代码里使用它了。新建一个index.js,随便在哪个文件下面都行:

    //index.js
    var _ = require("underscore");
    var result = _.map([1, 2, 3], function(num){ return num * 3; });
    console.log(result);

然后在index.js的目录下输入node index.js,就会得到结果:[3, 6, 9].


使用package.json

管理本地安装包最好的办法就是创建一个package.json文件,一个package.json文件把你的项目的名字、开发者、版本号等等信息全部列出来,总而言之package.json能帮你做到这些事情:

  • 把你的项目依赖列清楚
  • 能使用SemVer来指定你的项目的版本号
  • 总之就是分享代码变得更简单

创建一个package.json

命令行运行npm init,然后你需要填入很多关于这个包的信息,如果只是测试一下,不打算发布,直接回车确定就行。当然省略这些步骤也可以敲:npm init --yes,然后所有的项都会用默认值。

指定依赖

package.json里面有两个对象是用来指定依赖的:

  • "dependencies":这个对象下面列出生产环境下的依赖
  • "devDependencies":这个对象下面列出开发环境的依赖

当然,也可以手动编辑package.json

--save和--save-dev

package.json里面添加依赖更好的办法是用命令行,添加生产环境的依赖:

    npm install <package_name> --save

添加开发环境的依赖:

    npm install <package_name> --save-dev

如果当前目录下有package.json文件,然后你敲入npm install命令,然后就会安装好dependencies里面的依赖。


更新本地包

package.json的目录下敲入npm update就能把安装包更新一遍,之后可以再敲入npm outdated来检查一下是不是还有'过时的包'。


卸载安装包

    npm uninstall underscore

然后underscore就从node_modules里移除了。

    npm uninstall --save underscore

然后underscore就从package.json的dependencies里面移除了。


全局安装

如果需要在命令行里使用包,那就需要全局安装:

    npm install -g jshint

更新全局安装包

    npm install -g jshint

这样就会把jshint更新了,如果要更新所有的全局安装包:

    npm update -g

通过

    npm outdated -g --depth = 0

可以查出需要更新的全局包。

卸载:

    npm uninstall -g jshint