2025年node多版本管理(node版本管理工具有哪些)

node多版本管理(node版本管理工具有哪些)div id navCategory div 包是什么 包 英文单词是 package 代表了一组特定功能的源码集合 包管理工具 管理 包 的应用软件 可以对 包 进行 等操作借助包管理工具 可以快速开发项目 提升开发效率包管理工具是一个通用的概念 很多编程语言都有包管理工具 所以 常用的包管理工具 npm yarn cnpm

大家好,我是讯享网,很高兴认识大家。



 <div id="navCategory"></div> 

讯享网

包是什么?

『包』英文单词是package,代表了一组特定功能的源码集合

包管理工具

管理『包』的应用软件,可以对「包」进行,,,等操作
借助包管理工具,可以快速开发项目,提升开发效率
包管理工具是一个通用的概念,很多编程语言都有包管理工具,所以

常用的包管理工具

  • npm
  • yarn
  • cnpm

在这里插入图片描述
讯享网

命令的作用是将文件夹初始化为一个『包』,是包的配置文件,每个包都必须要有

内容示例:

初始化注意事项:

  • package name()不能使用中文、大写,默认值是,所以文件夹名称也不能使用中文和大写
  • version()要求的形式定义,必须是数字,默认值是
  • ISC证书与MT证书功能上是相同的,关于开源证书扩展阅读
  • 可以手动创建与修改
  • 使用或者极速创建(文件夹名称不包含大写字母和汉字)

(1) npm 搜索包

  • 命令行[ npm s(/search) 关键字]
  • 网站搜索https://www.npmjs.com/

对于如何精准找到需要的包,这就需要我们长期学习,通过文章、项目去积累

(2) npm 下载安装包

运行之后文件夹下会增加两个资源

  • 存放下载的包
  • ,用来锁定包的版本

如果出现错误,可以试试给node.js 配置一下环境变量。

// [ 1, 2, 3, 4, 5, 6 ]

安装uniq 之后,uniq 就是当前这个包的一个,有时会简称为比如我们创建一个包名字为A,A中安装了包名字是B,我们就说,也会说

(3) require 导入npm 包的基本流程

require 导入模块的类型有三种:

  • 内置模块
  • 自定义模块
  • npm 包

require 导入npm 包的基本流程:

  • 在当前文件夹下node_modules中寻找同名的文件夹
  • 在上级目录中下的node_modules中寻找同名的文件夹,直至找到磁盘根目录

其实怕我们导入npm 包有以上三种方式,但是下面两种方式的导入位置都太绝对了,一旦更换了node_modules 文件夹的位置就会出错;所以一般我们会使用第一种导入方式。

首先来了解一下生产环境和开发环境!

开发环境是程序员的环境,一般是指程序员的电脑,开发环境的项目一般生产环境是项目的环境,一般是指正式的服务器电脑,生产环境的项目一般

我们可以在安装时设置选项来区分依赖的类型,目前分为两类:

在这里插入图片描述

举个例子方便大家理解,比如说做蛋炒饭需要大米,油,葱,鸡蛋,锅,煤气,铲子等
其中锅,煤气,铲子属于开发依赖,只在制作阶段使用
而大米,油,葱,鸡蛋属于生产依赖,在制作与最终食用都会用到
所以开发依赖是只在开发阶段使用的依赖包,而生产依赖是开发阶段和最终上线运行阶段都用到的依赖包

之前我们使用npm 包安装方式都是局部安装,也就是出了某个文件夹就没办法使用了;现在我们来学习一下。

全局安装完成之后就可以在命令行的任何位置运行nodemon 命令

该命令的作用是也就是不像以前一样修改文件后先暂停上次请求再重新启动文件了;有了这个包后,只要保存了文件再次刷新网页,网页内容就会更新了。

说明:

  • 全局安装的命令不受工作目录位置影响
  • 可以通过可以查看全局安装包的位置
  • ,只有全局类的工具才适合,可以通过,这里先不必太纠结

(1) 修改windows 执行策略

有些电脑在安装nodemon 包是可能会出现问题,可能是windows 默认不允许npm 全局执行脚本文件,所以需要修改执行策略。

请添加图片描述

在这里插入图片描述

在这里插入图片描述

(2) 环境变量Path

如果遇到想要在命令行的任何位置都可以打开某个程序就可以为之配置环境变量。

在项目协作中有一个常用的命令就是,通过该命令可以依据和的依赖声明安装项目依赖

node_modules文件夹大多数情况都不会存入版本/仓库

在下载别人的代码的时候文件夹中一般都是没有node_modules 文件夹的,这样我们的代码可能就没有办法运行,如果我们一个一个的安装依赖效率很低,所以就可以使用npm i 安装依赖,就可以启动项目了。

项目中可能会遇到版本不匹配的情况,有时就需要安装指定版本的包,可以使用下面的命令的

项目中可能需要删除某些不需要的包,可以使用下面的命令

通过配置命令别名可以更简单的执行命令!

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

配置package,json中的scripts属性

配置完成之后,可以使用别名执行命令

不过start别名比较特别,使用时可以省略run

补充说明:
npm start是项目中常用的一个命令,一般用来启动项目
npm run有自动向上级目录查找的特性,跟require函数也一样
对于陌生的项目,我们可以通过查看scripts属性来参考项目的一些操作

我们可以通过npm来安装cnpm工具

功能命令初始化cnpm init安装包cnpm i uniq / cnpm i -S uniq / cnpm i -D uniq / cnpm i -g uniq安装项目依赖cnpm i删除cnpm r uniq

基本使用与npm 是一样的。

用npm 也可以使用淘宝镜像,配置的方式有两种

  • 直接配置
  • 工具配置

执行如下命令即可完成配置

使用配置npm的镜像地址决定npm 下载包的地址

安装nrm

修改镜像

nrm 切换注册地址 / 镜像也很方便。

列出支持的镜像地址

检查是否配置成功 (选做)

检查registry 地址是否为https://registry.npmmirror.com/,如果是则表明成功

补充说明:
1.建议使用第二种方式进行镜像配置,因为后续修改起来会比较方便
2.虽然cnpm可以提高速度,但是npm也可以通过淘宝镜像进行加速,所以npm的使用率还是高于cnpm

yarn是由Facebook在2016年推出的新的Javascript包管理工具,官方网址:https:/yarnpkg.com/

yarm官方宣称的一些特点

  • 速度超快:yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。同时利用并行下载以最大化资源利用率,因此安装速度更快
  • 超级安全:在执行代码之前,yarn 会通过算法校验每个安装包的完整性
  • 超级可靠:使用详细、简洁的锁文件格式和明确的安装算法,yarn 能够保证在不同系统上无差异的工作

我们可以使用npm安装yarn

在这里插入图片描述

可以通过如下命令配置淘宝镜像

可以通过yarn config list查看yarm的配置项

大家可以根据不同的场景进行选择
1.个人项目
如果是个人项目,,可以根据自己的喜好来选择
2.公司项目
如果是公司要根据项目代码来选择,可以判断项目的包管理工具

  • npm的锁文件为
  • yarm的锁文件为

包管理工具不要混着用,切记,切记,切记

  • 创建文件夹,并创建文件index.js,在文件中声明函数,使用module.exports暴露
  • npm初始化工具包,package.json填写包的信息(包的名字是唯一的)
  • 注册账号 https:/www.npmjs.com/signup
  • 激活账号(一定要激活账号)
  • 修改为官方的官方镜像(命令行中运行nrm use npm)
  • 命令行下npm login填写相关用户信息
  • 命令行下npm publish提交包

更新包:

后续可以对自己发布的包进行更新,操作步骤如下

  • 更新包中的代码
  • 测试代码是否可用
  • 修改package.json中的版本号
  • 发布更新

删除包:执行如下命令删除包

删除包需要满足一定的条件,https::/docs.npmjs.com/policies/unpublish
你是包的作者
发布小于24小时
大于24小时后,没有其他包依赖,并且每周小于300下载量,并且只有一个维护者

在这里插入图片描述

除了编程语言领域有包管理工具之外,操作系统层面也存在包管理工具,不过这个包指的是『软件包』

在这里插入图片描述

nvm全称顾名思义它是用来管理node版本的工具,

nvm的使用非常的简单,跟npm的使用方法类似

常用命令:

在这里插入图片描述

到此这篇关于Node.js包管理工具(npm、yarn、cnpm)的文章就介绍到这了,更多相关Node.js包管理工具内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!&nbsp;

小讯
上一篇 2025-05-24 18:28
下一篇 2025-05-17 16:04

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/170941.html