npm全称叫Node包管理工具(Node Package Manager)
使用npm有两大好处
- 统一的下载入口
- 自动下载依赖
一、npm的安装
只需要安装nodejs,就自带了npm工具
nodejs的下载地址:nodejs.org/en/download…
下载安装好后,在命令行输入npm -v,如果安装成功会显示出npm的版本号
//npm的版本
npm -v
6.9.0
//也可以看node的版本
node -v
v10.16.0
npm安装成功后,可通过npm install npm@版本号命令,将npm升级到指定版本号,也可以通过@latest表示安装的版本是最近一个稳定版本;有的时候,我们想将软件安装在全局,在全局环境下,在任何一个目录输入此命令都能识别,这是可以通过添加-g标记,表示全局安装
npm install npm@latest -g
在项目中,通过npm init -y 初始化 npm;-y表示初始化npm的时候使用默认配置,不用再问我那一堆问题了
初始化后,会在当前目录生成一个package.json文件,文件里头其实就是标准的json对象,并且可以修改
{
"name": "demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
输入安装命令时,install可以缩写成i
//比如安装jQuery
npm i jquery
//比如安装vue
npm i vue
npm收到要执行安装命令后,首先会先去看我npm有没有该插件,如果没有该名字的插件,会发出警告,如果发现有该插件,就会下载下来并安装到特定的目录node_modules下
另外插件安装后,安装的插件所对应的信息也会写到package.json里
{
"name": "demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"bootstrap": "^4.3.1",
"jquery": "^3.4.1",
"vue": "^2.6.10"
}
}
如果node_modeles被删除时,需要找回来所有依赖插件,可以根据package.json里面的信息,通过使用npm i命令,重新安装下载回来
npm i
注意后面什么都不用加,表示把所有库重新安装
另外有的时候可能需要删除指定名称的插件,可以用npm uninstall 插件名命令删除
//删除jQuery
npm uninstall jquery
注意用npm uninstall 插件名命令删除插件时,对应插件除了会在node_modules内被移除外,在package.json的dependencies内对应的依赖也会移除
另外,通过npm update 插件名称可更新插件版本
npm update jquery
如果要更新成旧的版本,可使用@指定版本号
npm update jquery@3.0.0
最后来详细了解package.json里的内容,即npm的常用配置项
package name:包名称,注意:包名中间不能有空格,并且必须要小写。version:包的版本号,默认是1.0.0description:包的描述,可以写也可以不写entry point:包的入口文件test command:命令git repository:git 仓库keywords:关键词author:作者
只要通过npm init初始化npm,就会生成这个json文件,其里面内容可以在初始化的时候配置也可以后面直接修改json文件
再说一嘴,json里面还有一项scripts,用于指定一些命令的快捷方式
{
"name": "demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
如上,那我们可以运行上面定义的命令;一般我们也可以在这个script里面自定义一些命令,指定了什么命令就可以跑什么命令
npm run test
以上就是npm的一些基本使用!