介绍一下NPM包管理

npm包管理

1、介绍

npm是NodeJs项目模块管理工具,它已经集成了nodejs安装包中(自5.2以后新增了npx指令用于解决调用项目内部安装的模块繁琐的问题),使用npm可以实现从NPM服务器下载别人编写的第三方包到本地使用。

npm仓库地址:https://www.npmjs.com/

当然除了npm以外还有Facebook贡献的Yarn,功能和npm一样,也可以作为包管理工具。

npx

node-modules/.bin/mocha --version
# 简化成了:
npx mocha --version

2、切换npm源

源:源站、镜像源、镜像。

npm使用国外镜像源地址,再有的时候可能网络不是很通顺,这时可以使用国内镜像源来完成npm下载模块功能。

切换源

  • 切换到阿里提供的npm镜像源

地址:https://developer.aliyun.com/mirror/NPM?from=tnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

执行完毕上述命名后,在系统中提供了一个cnpm包管理工具,功能和npm一样,所不同的是cnpm镜像源地址为阿里提供的源地址。

推荐,日后工作是安装软件都使用cnpm

  • 使用nrm管理npm镜像源

nrm 是一个 npm 源管理器,允许你快速地在 npm源间切换。npm默认情况下是使用npm官方源(npm config list 来查看),如果直接修改npm源,如果后续需要连接到官方源才能工作,这样来回切换源就变得麻烦了,nrm通过简单的命令就可以解决此问题。

# 安装  通过cnpm来安装,cnpm使用的就是国内镜像源
cnpm i nrm -g

注意:-g表示global全局,让nrm不限于到某一个项目中,而是在所有的项目中都可使用

安装好nrm后可以通过nrm ls命令来查看效果:

nrm ls

*表示当前正在使用的镜像源

如果想切换成其他的镜像源,可以通过nrm use 源名称进行切换,如需要切换成edunpm的源,则可以执行指令:

nrm use edunpm

3、npm相关命令

# 初始化生成package.json文件(创建项目的)
npm init -y[不询问]

# 查看本项目已安装模块
npm list

# 安装模块
npm install 模块名[@版本号 可选]npm i 模块名[@版本号 可选]

# 卸载已安装模块
npm uninstall 模块名

# 查看全局node_modules的地址
npm root -g

## 安装参数
##--save -S     记录生产环境所需模块 默认
##--save-dev -D 记录开发环境所需模块
##-g 安装到全局

关于语义化版本

版本格式:主版本号.次版本号.修订号.先行版本号,版本号递增规则如下:

  • 主版本号:当你做了不兼容的 API 修改

  • 次版本号:当你做了向下兼容的功能性新增(功能做了升级)

  • 修订号:当你做了向下兼容的问题修正(日常bug修改)

  • 先行版本号及版本编译元数据可以加到主版本号.次版本号.修订号的后面,作为延伸。

~表示版本号只能改变最末尾那段

^表示除了大版本号以外,小版本号和补丁版本号都可以变

特殊情况0开头的版本号:

危险写法:~0.1,等于 0.1.0 <= 版本号 <1.0.0

保险写法:^0.1,等于 0.1.0 <= 版本号 <0.2.0

关于软件版本发行的四个阶段:

  • alpha:内测版本
  • beta:公测版本
  • release candidate:RC,候选版本,功能已经确定,主要是排bug
  • release:正式发行版本

4、自定义npm脚本

通过package.json文件中的scripts自定义脚本命令:

{
  "scripts": {
    "test": "echo hello"
  }
}

随后就可以在命令行中运行:

npm run test

自定义npm脚本

如果需要更多的自定义命令,只需要按照上述的格式进行套用即可。

5、自动重启应用

在编写调试Node.js项目,修改代码后需要频繁的手动重启应用,非常繁琐。nodemon这个工具,它的作用是监听代码文件的变动,当代码改变之后,自动重启

# 全局安装nodemon
npm i -g nodemon

# 执行node脚本
nodemon app.js

nodemon

参考文献:NPM官方文档

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值