一.包
1.什么是包
Node.js 中的第三方模块又叫做包。
2.包的来源
不同于Node.js 中的内置模块与自定义模块,包是由第三方个人或团队开发出来的,免费供所有人使用。
注意: Node.js 中的包都是免费且开源的,不需要付费即可免费下载使用。
3.为什么需要包
由于Node.js 的内置模块仅提供了一些底层的API,导致在基于内置模块进行项目开发时,效率很低。
包是基于内置模块封装出来的,提供了更高级、更方便的API,极大的提高了开发效率。
包和内置模块之间的关系,类似于jQuery和浏览器内置API之间的关系。
4.设置淘宝镜像/下载包
win+r键输入cmd进入命令行,输入 npm config set registry http://registry.npm.taobao.org/ 后回车
注:npm config get registry 查看下载源
从https://www.npmjs.com/网站上搜索自己所需要的包
从https://registry.npmjs.org/服务器上下载自己需要的包
二.npm(包管理器,用于安装第三方库)
前端开发中的JS库文件可以通过Script标签引入,NodeJS项目开发中也会使用很多JS库。
npm就是用来管理这些JS库的工具,安装Node时已经安装过npm。
注:npm命令都是cmd进入到创建的文件夹中才运行的。
1、npm常用命令:
安装和卸载帮助命令:
【npm install -h】 安装命令(add, i, in, ins, inst, insta, instal, isnt, isnta, isntal, isntall)
【npm uninstall -h】卸载命令(unlink, remove, rm, r, un)
安装:
【npm i 包名1 包名2 包名3】 局部安装包(i是install简写)
【npm i 包名 -g】 全局安装
【npm root viem -g】查看全局安装目录
【npm i 包名 -D】 开发时使用
【npm i 包名 -S】 开发和上线后都使用
【npm i 包名@版本】 指定版本安装
【npm list】 查看插件
【npm i 文件路径】 从本地安装
【npm install 包名 -registry=地址】从镜像源安装
卸载:
【npm uninstall 包名】 卸载包
【npm remove 包名】 卸载包
【npm r 包名】 卸载包(r是remove简写)
【npm remove 包名 --save】 删除包并在依赖中也删除
更新:
【npm view 包名 versions】 查看历史版本
【npm update 包名】 更新版本
其他:
【npm -v】查看npm的版本
【nprm version】查看所有模块的版本
【npm search 包名】搜索包
【npm config set registry 地址】 设置镜像源
【npm config get registry】 查看下载源
【npm i】下载当前项目之前的所有缓存依赖的包
【npm run build】打包
2、初次安装包后多了那些文件?
初次装包完成后在项目文件夹下多了node_modules的文件夹和package-lock.json的配置文件。
其中:
node_modules文件夹用来存放所有已安装到项目中的包,也就是所有依赖包的地址,require()导入第三方包时,就是从这个目录中查找并加载包;
package-lock.json配置文件是所有依赖包的缓存地址,下次下载会加快,例如包的名字、版本号、下载地址等;
注意:不要手动修改node_modules或 package-lock.json文件中的任何代码,npm 包管理工具会自动维护它们。
3、包的语义化版本介绍
版本前有^,例如:^3.1.0,意思就是版本更新最大不超过4.0.0;
版本前无^,例如:3.1.0,意思就是无法更新。
包的版本号是以“点分十进制”形式进行定义的,总共有三位数字,X.Y.Z
X:大版本,不兼容的更新
Y:中版本(功能版本),增加一些新内容
Z:小版本(Bug修复版本),修复了一些小Bug
版本号提升的规则:只要前面的版本号增长了,则后面的版本号归零。