前端包管理工具 npm yarn cnpm npx(一)

简介: 前端包管理工具 npm yarn cnpm npx

前言

这篇文章主要和大家分享前端包管理工具,是什么,怎么用和基本原理,通过阅读,我想至少能够帮助大家解决一些常见的面试问题。

1.npm 和 yarn 区别和联系

2.package.json和 package-lock.json 是干什么的,有什么用

3.npm install 之后发生了什么

4.如何发布一个自己的npm包*

a4e33fc46df8dcf1c3ff3b4db8b0674.png39785d0abc76f6ebc341f70c38c9c8a.png

包管理工具的产生背景

我们通过JavaScript模块化的方式,把代码划分成一个小小的结构,并且封装成一个模块工具。 当我们的同事也想使用这个工具的时候,可以手动导入给他 当我们想分享给更多人的使用,该怎么做呢?一般来说方式有两种。

方式一


上传到github,其他人通过github下载我们的代码,手动引用

* 需要手动引用,手动管理依赖,手动控制风险较大。
* 当版本更新或者删除依赖时,需要重复上面的操作。

根据墨菲定律,凡是可能出问题的地方,就必出发生问题,这种方式是有效的方法,但觉得不是一个方便的方法,就像我们经常所说的,理论上可行,实际开发中不可用

方式二


使用专业的包管理工具来管理我们代码

  • 我们通过工具将代码发布到特定的位置
  • 其他人直接通过工具来安装,升级,删除我们的工具代码包

这也就是我今天要和大家分享的包管理工具

包管理工具npm

概述


npm 全称Node Package Manager node包管理工具,现在已经不仅仅局限于node包,在前端项目里我们也使用他来管理依赖包,比如vue,vue-router,vuex,express,koa,react,axios,babel,webpack。

npm 属于node的管理工具,当我们下载安装node的时候,就会一起安装npm

npm 管理的包可以在npm 官网www.npmjs.org/

我们发布自己的包其实是发布到registry上面的,当我们安装一个包时其实是从registry上面下载的包registry.npmjs.org

npm 配置文件


package.json文件

现在前端开发有大量的包,那么我们用npm管理管理这么多包,无论前端项目vue,react,还是后端项目express,koa,egg,都会一个配置文件,这个配置文件记录这项目的名称,版本号,项目描述,项目依赖库和依赖库的版本号。

可以使用npm init 生成一个package.json 文件

也可以通过脚手架创建一个项目,帮助我们自动生成package.json

配置文件图示

b78814997bbb0ab89c0765789b19d0e.png

88dd8b2b86b4ab0ce6e6333f5ee690b.png



相关文章
|
22天前
|
资源调度 JavaScript Linux
nvm, node.js, npm, yarn 安装配置
nvm, node.js, npm, yarn 安装配置
54 1
|
2天前
|
缓存 资源调度 JavaScript
yarn安装和使用及与npm的区别
yarn安装和使用及与npm的区别
|
9天前
|
前端开发 JavaScript 数据安全/隐私保护
从0到1开发一个自己的npm包完整过程
创建自己的 npm 包涉及六个步骤:1) 注册 npm 账号;2) 使用 `npm init` 初始化项目,确保 package.json 的 name 唯一且 private 为 false;3) 开发项目,可封装 UI 组件、函数库或命令行工具;4) 本地调试,通过 `npm link` 在项目中测试;5) `npm login` 登录账号,可能需切换至官方仓库;6) 使用 `npm publish` 发布项目。注意版本号递增,无意义的包不建议发布。
19 2
从0到1开发一个自己的npm包完整过程
|
12天前
|
JSON 小程序 前端开发
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
微信小程序按需引入 vant 组件,自动清除项目中未使用的 vant 组件,减少代码包大小,避免因未使用到的 vant 组件触发隐私协议提交审核时被拒
29 1
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
|
22天前
|
存储 资源调度 JavaScript
pnpm、npm、yarn是什么?怎么选择?
pnpm、npm、yarn是什么?怎么选择?
26 2
|
22天前
|
缓存
发布第一个npm包的过程记录
发布第一个npm包的过程记录
20 0
|
22天前
|
资源调度 前端开发 JavaScript
nvm,npm,yarn相关指令,前端配置准备
nvm,npm,yarn相关指令,前端配置准备
10 1
|
22天前
|
网络安全 计算机视觉
【node】 npm install 报错:code 128
【node】 npm install 报错:code 128
45 1
|
22天前
|
JavaScript Linux 数据安全/隐私保护
node内网安装npm私服以及依赖包上传发布verdaccio
node内网安装npm私服以及依赖包上传发布verdaccio
159 1
|
22天前
|
JavaScript 内存技术
node与npm版本对应关系以及使用nvm管理node版本
node与npm版本对应关系以及使用nvm管理node版本
802 0

推荐镜像

更多