NPM 简介
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:
允许用户从NPM服务器下载别人编写的第三方包到本地使用。
允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。
允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。
由于新版的nodejs已经集成了npm。同样可以通过输入 "npm -v" 来测试是否成功安装。
npm 包安装
包共享平台:https://www.npmjs.com (检索包使用文档)
服务器:https://registry.npmjs.org (下载包,需科学上网)
npm包管理工具: Node Pakage Manager (Node.js安装时已经下载)
npm 版本更新指令:npm install -g npm
npm包安装例子:
安装包: npm i 完整包名称 [ @版本号 ] ( npm install 完整包名称 )
卸载包:npm uninstall 完整包名称
nodemon 工具
nodemon 工具,能监听项目文件的变动。修改后会自动重启项目。
安装(全局): npm i -g nodemon
报错处理:
(1) 管理员身份运行PowerShell (Start-Process powershell -Verb runAs)
(2)输入下面命令并回车
set-ExecutionPolicy RemoteSigned
(3)选择Y
(4)重新尝试
包管理配置文件
pakage.json 记录当前项目所依赖模块的版本信息,更新模块时锁定模块的大版本号(版本号的第一位);package-lock.json 记录了 node_modules 目录下所有模块的具体来源和版本号以及其他的信息。 package.json 和package-lock.json 保证了大家在协同开发的时候所用的依赖模块版本是一致的。
项目根目录中 pakage.json 包管理配置文件
- 项目名称、版本号、描述等
- 项目中用到哪些包
- 包使用环境(开发 / 部署 )
快速创建 pakage.json 指令: npm init -y (项目根目录;不支持中文与空格)
一次性下载所有依赖包 指令: npm i ( npm install )
原理:自动读取pakage.json 下dependencies 节点,自动下载。
项目包
- 开发依赖包 (仅开发时使用;记录在 devDependecies 节点中)
指令: npm i 包名 -D (npm install 包名 --save-dev )
- 核心依赖包 (开发,部署阶段的都会使用;记录在 dependecies 节点)
全局包
指令: npm i 包名 -g ( 卸载 npm uninstall 包名 -g )
安装目录:(C:\User\用户目录\AppData\Roaming\mode_modules)
注:只有工具包(参考官方文档),才有全局安装的必要性。
包结构
- 必须以单独路径目录而存在
- 包目录下,必须包含 pakage.json 配置文件
- pakage.json 必须包含 name (名称), version(版本号) , main(入口) 这三个属性。
自定义包
- 创建包目录文件夹
- 根目录下,创建 package.json (包管理配置文件)
- 根目录下,创建 xxx.js (包入口文件)
- 根目录下,创建 README.md (包说明文档)