npm常用命令及镜像设置

主页:🚪 传送

概述


npm致力于让 JavaScript 开发变得优雅、高效和安全。免费的 npm Registry 已成为 JavaScript 代码共享的中心,拥有超过一百万个软件包,是世界上最大的软件注册表。它是Node.js的标准包管理器,用于安装、共享和管理应用程序依赖关系,能解决NodeJS代码部署上的很多问题。也就是说,如果你想要在你的项目中引入一些库或工具,可以使用npm来快速安装。

介绍命令之前先来看一下常用的使用场景。

一般来说比较常见的场景有以下几种:

常见使用场景:

  • 允许用户从NPM服务器下载别人编写的第三方包到本地使用。
  • 允许用户从NPM服务器 下载并安装别人编写的命令行程序到本地使用。
  • 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

常用命令


一些npm常用命令

  1. npm版本号
c 复制代码
# 检测npm是否安装,以及查看npm安装的版本号
npm -v   
  1. npm升级
c 复制代码
# 如果安装的是旧版本的npm,可以通过npm命令来升级
npm install npm -g 
  1. 临时使用镜像源
c 复制代码
# 设置本次从淘宝镜像上安装需要的包,不改变npm原有的仓库镜像源
npm install -g <安装包名> --registry=https://registry.npm.taobao.org
# 安装package.json中所有的包,本次安装从设置的镜像中下载,不改变npm原有配置的仓库镜像
npm install --registry=https://registry.npm.taobao.org  
  1. 查看镜像源
c 复制代码
# 查看当前本地npm配置的仓库镜像
npm config get registry
  1. 配置镜像源
c 复制代码
# 配置本地npm的仓库镜像源地址,以后下载包,在下载命令中不配置镜像源时,就从上述配置的镜像源中下载指定的安装包
npm config set registry <https://....仓库镜像源地址>

# 也可以修改 ~/.npmrc 文件,加入下面内容
registry = https://registry.npm.taobao.org(<https://....仓库镜像源地址>)
  1. 使用cpnm
c 复制代码
# 使用cnpm命令替换npm命令,$ cmpm install <包名>
npm install -g cnpm  --registry=https://registry.npm.taobao.org
  1. 安装指定包
c 复制代码
#  加-g是全局安装指定的包,不加-g是本地本项目安装指定的包名
npm install <包名>   <-g>
  1. 报错解决
c 复制代码
# 类似 " npm err ! Error: connect ECONNREFUSED 127.0.0.1:8087 " 的错误解决 (设置null 再重新设置镜像)
npm config set proxy null
npm config set https-proxy null 
npm config set registry <https://....仓库镜像源地址>
  1. 查看包
c 复制代码
# 查看所有全局安装的包
npm -g list
  1. 卸载包
c 复制代码
#  卸载某个包
npm uninstall  <包名>   ;
# 卸载所有的包
npm uninstall * 
  1. 查看依赖包是否存在
c 复制代码
# 查看依赖包是否存在(用10的命令卸载某个包后,如果是卸载的/node_modules/目录下的包,可以通过此命令查看卸载的包是否还存在)
npm ls
  1. 更新某个包到最新版本
c 复制代码
npm update  <包名>
  1. 升级指定包到指定版本
c 复制代码
# 例如:npm install -g npm@18.15.0 ,升级npm 到18.15.0版本
npm install <-g>  <包名>@<版本号>
  1. 操作
c 复制代码
# 在npm资源库中注册用户
npm adduser
# 登录用户
npm login
# 发布项目
npm publish
# 清除缓存
npm cache verify
npm cache clean --force
俩个命令都可

对比


(本地安装与全局安装 )、(--save--save-dev)选项的区别 、对比及命令。

本地安装


  • 安装位置: 包会被安装在当前项目的 node_modules 目录下。
  • 作用: 本地安装的包通常是项目的依赖,只在该项目中可用。
  • 命令: npm install <package_name>

全局安装


  • 安装位置: 包会被安装在全局的 node_modules 目录下,通常在系统的全局路径中。
  • 作用: 全局安装的包可以在任何项目中使用,一般用于安装一些命令行工具或全局可用的模块。
  • 命令: npm install -g <package_name>
说明 本地安装 全局安装
安装位置 当前项目的 node_modules 目录下 全局的 node_modules 目录下(一般在系统全局路径)
作用 项目的依赖(仅作用于当前项目) 全局可用(一般用于安装一些命令行工具或全局可用的模块)
命令 npm install <package_name> npm install -g <package_name>

--save (或 -S


  • 作用: 将包添加到 dependencies 中,标识该包为项目运行时的依赖。
  • 命令: npm install <package_name> --save

--save-dev (或 -D


  • 作用: 将包添加到 devDependencies 中,标识该包为开发时的依赖,仅在开发和测试阶段使用。
  • 命令: npm install <package_name> --save-dev
说明 --save --save-dev
作用 项目运行时依赖 开发时的依赖(仅开发与测试阶段使用)
命令 npm install <package_name> --save npm install <package_name> --save-dev

示例:

假设要安装一个名为 lodash 的包:

bash 复制代码
# 本地安装,作为项目的依赖
npm install lodash --save
# 或使用缩写
npm install lodash -S

这会把 lodash 安装到项目的 node_modules 目录,并添加到 dependencies 中。

bash 复制代码
# 全局安装,作为系统的全局工具
npm install -g lodash

这会把 lodash 安装到全局 node_modules 目录中,可以在整个系统中使用。

bash 复制代码
# 开发时安装,作为开发依赖
npm install lodash --save-dev

# 或使用缩写
npm install lodash -D

这会把 lodash 安装到项目的 node_modules 目录,并将其添加到 devDependencies 中,表示它是在开发阶段使用的依赖。

通过使用 --save--save-dev,你可以清晰地区分项目运行时的依赖和开发时的依赖,而本地安装和全局安装则控制了包的作用范围。

镜像设置


npm的官方镜像位于国外,有时候我们会在安装依赖的时候出现下载缓慢的情况,甚至有时候会出现安装失败的情况。为了解决这个问题,可以选择使用国内的npm镜像,以此来加快下载速度,保证依赖安装的成功率。也就是说NPM镜像是NPM的一个加速服务,用于提高NPM包的下载速度。

设置镜像方法


使用命令行或者配置文件两种方法可以设置npm镜像。

  1. 使用命令行设置npm镜像
c 复制代码
npm config set registry https://registry.npm.taobao.org

将npm的镜像地址设置为淘宝的镜像,速度会比较快。

  1. 使用配置文件设置npm镜像
c 复制代码
npm config edit

用命令打开npm的配置文件,然后在里面设置npm的镜像。

c 复制代码
registry=https://registry.npm.taobao.org/

将registry设置为上面的镜像地址,保存后关闭即可。

示例:

c 复制代码
 以淘宝镜像举例:
 
1.临时使用
 npm --registry https://registry.npm.taobao.org install express
 
2.一直使用
 npm config set registry https://registry.npm.taobao.org
验证是否成功:
npm config get registry 
或 
npm info express

3.使用cnpm
 npm install -g cnpm --registry=https://registry.npm.taobao.org
或
cnpm install express

切换回npm官方镜像


在某些情况下,我们需要切换回npm的官方镜像。那么该如何做呢?也很简单,只需将registry这个参数设置为npm官方镜像即可。

c 复制代码
npm config set registry https://registry.npmjs.org

选择镜像源


虽然淘宝的npm镜像明显比npm官方镜像快很多,但是在某些情况下,我们还是需要选择其他的镜像源。

常见镜像源:

c 复制代码
1、淘宝镜像: https://registry.npm.taobao.org
2、cnpmjs镜像: https://registry.nlark.com
3、npm官方镜像: https://registry.npmjs.org

其他镜像源:   一些可能会用到的镜像:

c 复制代码
cnpm --- http://r.cnpmjs.org/
eu ----- http://registry.npmjs.eu/
au ----- http://registry.npmjs.org.au/
sl ----- http://npm.strongloop.com/
nj ----- https://registry.nodejitsu.com/

选择适合自己的源可以大大提高安装依赖的速度和成功率,推荐使用淘宝的npm镜像

相关推荐
哎呦没6 分钟前
SpringBoot框架下的资产管理自动化
java·spring boot·后端
2401_857600958 分钟前
SpringBoot框架的企业资产管理自动化
spring boot·后端·自动化
NiNg_1_2344 小时前
SpringBoot整合SpringSecurity实现密码加密解密、登录认证退出功能
java·spring boot·后端
Chrikk6 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*6 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go
canyuemanyue6 小时前
go语言连续监控事件并回调处理
开发语言·后端·golang
杜杜的man6 小时前
【go从零单排】go语言中的指针
开发语言·后端·golang
customer087 小时前
【开源免费】基于SpringBoot+Vue.JS周边产品销售网站(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·开源