NPM入门
看到一篇关于npm入门的超棒的博客,地址:http://www.sitepoint.com/beginners-guide-node-package-manager/,整理了下重点,抽空翻译一下,用来作为入门确实不错,推荐英语好的朋友直接阅读.
NPM是什么?
NPM是基于node的包管理工具(node package manager),over
安装
首先需要安装node,安装后自带npm,安装过程略
安装好后可以使用命令node --version
查看node的版本,npm --version
查看npm的版本
关于node的包模块
node的包模块分为local和global,其中local安装的话会将依赖的包安装到当前工作目录的node_modules
下,global安装会将其安装到{prefix}/lib/node_modules
下,一般默认{prefix}
路径都为/usr
或者/usr/local
,可以通过命令npm config get prefix
来查看prefix的路径
修复npm global安装权限问题
因为global安装路径的原因,global安装需要的权限问题需要root权限,而因为这样的安全因素会导致第三方包依赖出现问题,所以需要改变一下global安装的路径
cd $HOME && mkdir .node_modules_global
npm config set prefix=$HOME/.node_modules_global
同时在$HOME/.bashrc
或者$HOME/.profile
或者$HOME/.bash_profile
添加:
export PATH="$HOME/.node_modules_global/bin:$PATH"
保存后source 你刚才编辑的文件
一下,然后echo $PATH
查看刚刚添加的文件夹.node_modules_global
是否存在
常用命令
global安装包
npm install xxx --global
npm install xxx -g // 其中-g为上面--global的简写
将包安装在本项目下
npm install xxx
安装某个版本的包
npm install xxx@version_number // xxx为包名,version_number为具体的版本号
升级某个包到最新版本
npm update xxx
查看已经安装的包
查看已经安装的global环境的包
npm list --global
查看本项目(文件夹)已经安装的包
npm list
当你发现某个包依赖关系太深时可以通过添加flag--depth=n
来过滤太深的依赖包名.
卸载某个包
npm uninstall xxx
查找某个包
npm search xxx
管理缓存
当我们install某个包后,npm会在我们的$HOME/.npm
文件夹下创建一个副本,避免下次install的网络开销,但有时候我们并不需要,可以采用命令npm cache clean
来清理下
依赖管理
当我们的项目中有过多依赖时,手写依赖是一件很扯淡的事情. 还好我们可以使用npm命令生成一个package.json
的文件来帮我们管理依赖,可以通过在项目的根目录下输入npm init
来快捷创建一个package.json
的文件,关于package.json文件的介绍详细可以查看npm的手册https://docs.npmjs.com/files/package.json了解