nodejs第五天 npm yarn pnpm 包管理器
创始人
2024-05-30 04:16:40
0

文章目录

      • npm
        • package.json
        • 安装包
        • 全局安装
        • 配置镜像
      • yarn
        • 安装使用
        • 镜像配置
      • pnpm
        • 使用
        • 镜像

npm

node中的包管理器叫做npm(node package manage),我们可以将自己开发的包上传到npm中共别人使用,也可以直接从npm中下载别人开发好的包

npm由以下三个部分组成:

  1. npm网站 https://www.npmjs.com/
  2. npm CLI(Command Line Interface 即 命令行)(通过npm的命令行,可以在计算机中操作npm中的各种包(下载和上传等))
  3. 仓库(仓库用来存储包以及包相关的各种信息)

npm在安装node时已经捆绑一起安装了,查看npm是否安装 npm -v

package.json

我们的每一个node项目,都可以被认为是一个包。都应该为其创建package.json描述文件。只需要进入项目目录并输入npm init即可进入npm的交互界面,只需根据提示输入相应信息即可

npm init    #输入内容或者一直回车生成package.json文件
npm init -y  #直接通过默认选项不用一步一步回车直接用默认的,来创建package.json,要求目录名称是英文,中文会报错
{"name": "node1","version": "1.0.0","description": "这是包的描述","main": "01.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"author": "","license": "ISC"
}

name(必备):包的名称
version(必备:版本号,规则:1.0.0 最后一个是修复bug,中间是增加功能,第一个是更新功能,会影响兼容
main 主文件 一般叫index.js
license 版权声明
scripts 配置一些自定义的指令,定义后用npm类执行这些命令,如果是自定义的命令要加 npm run XX
test和start 可以直接 npm start 使用,其它命令要用npm run XXX

在这里插入代码片

安装包

npm install 包名   将包下载到目录中

install 发生了什么?
1.将包下载到当前项目的 node_module目录下
2.会在package.json的dependencies 属性中添加 依赖
如 npm install lodash 会在 dependencies 中 加上 "lodash": "^4.17.21" 前边的 ^ 表示匹配最新的4.x.x的版本,如果是"4.17.21",表示匹配最小依赖,也就是4.17.x
3.会自动添加package.lock.json文件,用来记录当前项目的下包的结构和版本的,提升重新下载包的速度

npm install lodash@3.2.0    指定安装的版本
npm install lodash@"> 3.2.0"   指定大于该版本

全局安装

npm install -g   将包安装到计算机中,通常全局安装的是工具
npm uninstall xxx  卸载包  如果是全局的  要 -g 卸载

配置镜像

npm的服务器位于国外,访问速度会比较慢,可以通过配置国内镜像来解决该问题,就是国外的服务器在中国的一个分身
1.在系统中安装 cnpm

npm install -g cnpm --registry=https://registry.npmmirror.com
  1. 直接修改npm的地址为镜像地址
npm set registry https://registry.npmmirror.com

还原到原版命令

npm config delete registry   还远到原版命令
npm config get registry  查看当前仓库的配置

yarn

安装使用

第一种安装

npm i yarn -g   全局安装 yarn
yarn -v  查看版本
npm r yarn -g  删除yarn

第二种安装
在新版本的node中,已经包含了yarn,可以通过启用corepack的方式使用yarn

corepack enable  启用yarn
yarn -v
pnpm -v   pnpm也有了
corepack prepare yarn@stable --activate  切换到最新版本
corepack prepare yarn@1 --activate  切换到1.XX版本
yarn init    (初始化,创建package.json)
yarn add xxx   (添加依赖)  安装包,最新版本没有node_modules,因为隐藏起来了
yarn node  ./index.js   执行jsyarn add xxx -D  开发环境安装依赖
yarn remove xxx  移除包
yarn  自动安装依赖
yarn run  执行自定义脚本
yarn global add  全局安装
yarn global bin 全局安装目录

镜像配置

安装镜像

yarn config set registry https://registry.npmmirror.com

恢复到原版

yarn config delete registry

pnpm

使用

npm install -g pnpm  安装
pnpm init    初始化项目,添加package.json
pnpm add xxx    添加依赖
pnpm add -D xxx      添加开发依赖
pnpm add -g xxx    添加全局包
pnpm install       安装依赖
pnpm remove xxx     移除包

镜像

pnpm config set registry https://registry.npmmirror.com

恢复原版

pnpm config delete registry

相关内容

热门资讯

常用商务英语口语   商务英语是以适应职场生活的语言要求为目的,内容涉及到商务活动的方方面面。下面是小编收集的常用商务...
六年级上册英语第一单元练习题   一、根据要求写单词。  1.dry(反义词)__________________  2.writ...
复活节英文怎么说 复活节英文怎么说?复活节的英语翻译是什么?复活节:Easter;"Easter,anniversar...
2008年北京奥运会主题曲 2008年北京奥运会(第29届夏季奥林匹克运动会),2008年8月8日到2008年8月24日在中华人...
英语道歉信 英语道歉信15篇  在日常生活中,道歉信的使用频率越来越高,通过道歉信,我们可以更好地解释事情发生的...
六年级英语专题训练(连词成句... 六年级英语专题训练(连词成句30题)  1. have,playhouse,many,I,toy,i...
上班迟到情况说明英语   每个人都或多或少的迟到过那么几次,因为各种原因,可能生病,可能因为交通堵车,可能是因为天气冷,有...
小学英语教学论文 小学英语教学论文范文  引导语:英语教育一直都是每个家长所器重的,那么有关小学英语教学论文要怎么写呢...
英语口语学习必看的方法技巧 英语口语学习必看的方法技巧如何才能说流利的英语? 说外语时,我们主要应做到四件事:理解、回答、提问、...
四级英语作文选:Birth ... 四级英语作文范文选:Birth controlSince the Chinese Governmen...
金融专业英语面试自我介绍 金融专业英语面试自我介绍3篇  金融专业的学生面试时,面试官要求用英语做自我介绍该怎么说。下面是小编...
我的李老师走了四年级英语日记... 我的李老师走了四年级英语日记带翻译  我上了五个学期的小学却换了六任老师,李老师是带我们班最长的语文...
小学三年级英语日记带翻译捡玉... 小学三年级英语日记带翻译捡玉米  今天,我和妈妈去外婆家,外婆家有刚剥的`玉米棒上带有玉米籽,好大的...
七年级英语优秀教学设计 七年级英语优秀教学设计  作为一位兢兢业业的人民教师,常常要写一份优秀的教学设计,教学设计是把教学原...
我的英语老师作文 我的英语老师作文(通用21篇)  在日常生活或是工作学习中,大家都有写作文的经历,对作文很是熟悉吧,...
英语老师教学经验总结 英语老师教学经验总结(通用19篇)  总结是指社会团体、企业单位和个人对某一阶段的学习、工作或其完成...
初一英语暑假作业答案 初一英语暑假作业答案  英语练习一(基础训练)第一题1.D2.H3.E4.F5.I6.A7.J8.C...
大学生的英语演讲稿 大学生的英语演讲稿范文(精选10篇)  使用正确的写作思路书写演讲稿会更加事半功倍。在现实社会中,越...
VOA美国之音英语学习网址 VOA美国之音英语学习推荐网址 美国之音网站已经成为语言学习最重要的资源站点,在互联网上还有若干网站...
商务英语期末试卷 Part I Term Translation (20%)Section A: Translate ...