Nodejs 包管理器 NPM
2018-02-14 by dongnan
什么是 Node.js ?
Node.js
是一个基于 Chrome V8
引擎的 JavaScript
运行环境。
有那些特性?
Node.js
使用了一个事件驱动、非阻塞式 I/O
的模型,使其轻量又高效。
如何安装 Node.js ?
推荐使用 docker
创建一个 Node.js
环境,详细请参考这里;
什么是 NPM ?
NPM (node package manager
) 是 Node.js
的包管理器,是全球最大的开源库生态系统,
通过 NPM
可以找到大量优秀的第三方模块,也可以上传并共享自己的模块。
更重要的是 NMP
还可以帮助解决依赖关系等。
由于新版的 Node.js
已经集成了 npm
,可以通过输入 npm -v
来查看版本 :
npm -v
5.6.0
常用命令
搜索模块
npm search express | head -n2
NAME | DESCRIPTION | AUTHOR | DATE | VERSION | KEYWORDS
express | Fast,… | =hacksparrow… | 2017-10-10 | 4.16.2 | express framework sinatra web rest restful router app api
安装模块
express
是常用的 Node.js
web框架模块。
npm install express
npm WARN saveError ENOENT: no such file or directory, open '/root/package.json'
# ...省略
+ express@4.16.2
added 49 packages in 10.562s
安装好的 express
模块就放在了工程目录下的 node_modules
目录
ls ~/node_modules/express/
History.md LICENSE Readme.md index.js lib package.json
全局与本地
npm
的包安装分为本地安装local
、全局安装global
两种。
本地安装
- 将安装包放在
./node_modules
下(运行命令时所在的目录),如果没有node_modules
目录,会在当前执行 npm 命令的目录下生成node_modules
目录。 - 可以通过
require()
来引入本地安装的包。
全局安装
- 将安装包放在
/usr/local
下或者你node
的安装目录。 - 可以直接在命令行里使用。
尝试使用全局方式安装 express
npm -g install express
+ express@4.16.2
added 49 packages in 7.871s
# 安装的目录
ls /usr/local/lib/node_modules/express/
History.md LICENSE Readme.md index.js lib node_modules package.json
检查安装信息
npm list express -g
/usr/local/lib
`-- express@4.16.2
模块信息文件
package.json
位于模块的目录下,用于定义包的属性。看下 express
包的 package.json
文件
head /usr/local/lib/node_modules/express/package.json
{
"_from": "express",
"_id": "express@4.16.2",
"_inBundle": false,
"_integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=",
"_location": "/express",
"_phantomChildren": {},
"_requested": {
"type": "tag",
"registry": true,
更新模块
npm update express -g
卸载模块
npm uninstall express -g
removed 49 packages in 0.932s