npm 包 命令
npm,lnc 公司提供了一个包管理工具,我们可以使用这个包管理工具,从https://registry.npmjs.org/ 服务器把需要的包下载到本地使用
这个包管理工具的名字叫Node Package Manager(简称 npm 包管理工具),这个包管理工具随着node.js的安装包一起被安装到了用户的电脑上。
大家可以在终端中执行npm -v 命令,来查自己电脑上所安装的npm包管理工具的版本号
1.在项目中安装包的命令
npm install 包的完整名称
简写:
npm i 完整的包名称
2.安装指定版本的包
npm i moment@2.22.2
3.包的语义化版本规范
包的版本号是以“点分十进制”形式进行定义的,总共有三位数字,例如2.24.0
其中每一位数值所代表的含义如下:
第1位数字:大版本
第2位数字:功能版本
第3位数字:Bug 修复版本
3.快速创建 package.json
npm init -y
4.一次性安装所有的包
但我们拿到一个剔除了 node_modules 的项目之后,需要先把所有的包下载到项目中,才能将项目运行起来。否则会报类似于下面的错误
//由于项目运行依赖于moment 这个包,如果没有提前安装好这个包,就会包如下的错误
Error:Cannot find module ‘moment’
可以运行 npm install 命令(或 npm i) 一次性安装所有依赖包
npm install
5.卸载包
npm uninstall moment
注意:npm uninstall 命令执行成功后,会把卸载的包,自动从package.json 的dependencies 中移除掉
6.devDependencies节点
//安装指定的包,并记录到devDependencies节点中
npm i 包名 -D
//注意:上述命令是简写形式,等价与下面完整的写法:
npm install 包名 --save-dev
7.切换npm的下载镜像源
下载的镜像源,指的就是下包的服务器地址。
//查看当前的下载镜像源
npm config get registry
//将下包的镜像源切换为淘宝镜像源
npm config set registry=https://registry.npm.taobao.org/
//检查镜像源是否下载成功
npm config get registry
8.nrm
为了更方便的切换下包的镜像源,我们可以安装nrm这个小工具,利用nrm提供的终端命令,可以快速差看和切换下包的镜像源
//通过 npm 包管理器,将nrm 安装为全局可用的工具
npm i nrm -g
//查看所有可用的镜像源
nrm ls
//将下包的镜像源切换为 taobao 镜像
nrm use taobao
//测试镜像速度
nrm test
9.项目包
npm i 包名 -D //开发依赖包(会被记录到 devDependencies 节点下)
npm i 包名 //核心依赖包 (会被记录到 devdependencies 节点下)
10.全局包
在执行 npm install 命令时,如果提供了 -g 参数,则会把包安装为全局包
全局包会被安装到 C:\Users\用户目录\AppDate\Roaming\npm\node_modules 目录下
npm i 包名 -g //全局安装指定的包
npm uninstall 包名 //卸载全局安装的包
注意:
只有工具性质的包,才有全局安装的必要性,因为它提供了好用的终端命令
判断某一个包是否需要全局安装后才能是有,可以参考官方提供的使用说明即可
11.i5ting_toc
i5ting_toc 是一个可以把md文档转为html页面的小工具,使用步骤如下
//将 i5ting_toc 安装为全局包
npm install -g i5ting_toc
//调用 i5ting_toc,轻松实现md 转 html 的功能
iting_toc -f 要转换的md文件路径 -o
12.把包发布到npm上
将终端切换到包的根目录树之后,运行npm publish 命令 ,即可将包发布到npm 上 (注意:包名不能雷同)
13.删除已发布的包
运行 npm unpublish 包名 --force 命令,即可从npm删除已发布的包
注意:
npm unpublish 命令只能删除72小时以内发布的包
npm unpublish 删除的包,在24小时内不允许重复发布
发布报的时候要慎重,尽量不要往npm发布没有意义的包
14.安装 express
npm i express@4.17.1
15.安装vue脚手架
npm install -g @vue/cli
//切换到你要创建的目录,然后使用命令创建项目
vue create xxxx
//启动项目
npm run serve