作者:五月君来源:Nodejs技术栈
包管理器又称软件包管理系统,它是在电脑中自动安装、配制、卸载和升级软件包的工具组合,在各种系统软件和应用软件的安装管理中均有广泛应用。对于我们业务开发也很受益,相同的东西不必重复去造轮子。
每个工具或者开发语言都有相应的包管理器,好比Ubuntu的apt-get、Centos的yum、Java的Maven仓库等等。Node.js中目前最出名的包管理器为NPM也是生态最好的。
什么是NPM?
NPM是Node.js中的包管理器。允许我们为Node.js安装各种模块,这个包管理器为我们提供了安装、删除等其它命令来管理模块。这里有一点我们需要注意,我们必须要有一个package.json文件或node_modules目录安装模块到本地。
执行命令npmimodule-S/D安装模块后,会在本地存储我们所安装的依赖项,存在于package.json的dependencies/devDependencies对象里。例如,如果一个模块X使用了模块A版本为1.0,模块Y使用了模块A版本为1.5,那么模块X或Y都将在本地拥有自己对应的模块A的副本。
//模块X{"name":"X","dependencies":{"A":"^1.0"}}
//模块Y{"name":"Y","dependencies":{"A":"^1.5"}}
什么时候需要NPM包?
当我们在开发一些Node.js项目时,可能会遇到一些地方需要NPM,例如链接Redis、MongoDB或者发送请求Request等,有了这些现有模块可以使我们更专注于业务开发,当然有时你会有些特别的需求,这时可能需要自己去封装一个NPM模块,实现模块复用、资源共享。
NPM安装
NPM不需要单独安装,在我们安装Node.js环境时,NPM也就安装了,Node.js环境还没搭建的同学可参考“3N兄弟”助您完成Node.js环境搭建一节。
终端执行npm-v命令查看当前npm版本
$npm-v5.6.0
NPM源设置
在国内有时候受限于网络因素的影响,通常在安装一个包管理器之前可以切换为淘宝NPM镜像,加速安装速度,但是要注意如果是私有模块在NPM官方的,则必须切换为官方源,否则会出现错误。
查看当前npm源
npmconfiggetregistry#