npm
全称叫Node包管理工具(Node Package Manager
)
使用npm有两大好处
1. 统一的下载入口
2. 自动下载依赖
一、npm的安装
只需要安装nodejs,就自带了npm工具
nodejs的下载地址:https://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
下
![](https://img.haomeiwen.com/i17785871/6eb9a473079f7a27.png)
另外插件安装后,安装的插件所对应的信息也会写到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.0 -
description
:包的描述,可以写也可以不写 -
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的基本内容!
网友评论