当前位置: 首页 > news >正文

企业网站整合软件网站开发实训报告

企业网站整合,软件网站开发实训报告,wordpress文章目录插件,中国网站建设npm扁平的node_modules结构比如项目依赖了A 和 C,而 A 和 C 依赖了不同版本的 B1.0 和 B2.0,D也依赖B1.0, node_modules 结构如下:node_modules ├── A1.0.0 ├── B1.0.0 └── C1.0.0└── node_modules└── B2.0.0C依赖的B2.0因为版…

npm

扁平的node_modules结构

比如项目依赖了A 和 C,而 A 和 C 依赖了不同版本的 B@1.0 和 B@2.0,D也依赖B@1.0, node_modules 结构如下:

node_modules
├── A@1.0.0
├── B@1.0.0
└── C@1.0.0└── node_modules└── B@2.0.0

C依赖的B@2.0因为版本号原因还放在C的node_modules下

幽灵依赖

幽灵以来是指在package.json中未定义的依赖,但项目中依然可以被引用到

比如上方我们package.json只安装了A和C

{"dependencies": {"A": "^1.0.0","C": "^1.0.0"}
}

由于B在安装时被提升到了和A同样的级别,所以在项目中可以正常引用B

幽灵依赖是由依赖的声明丢失造成的,如果某天某个版本A依赖不在依赖B或者B版本发生了变化,那么就会造成依赖缺失和兼容性问题

依赖分身

假设继续再安装依赖 B@1.0 的 D 模块和依赖 @B2.0 的 E 模块,此时:

A 和 D 依赖 B@1.0 C , E 依赖 B@2.0, 以下是提升 B@1.0 的 node_modules 结构:

node_modules
├── A@1.0.0
├── B@1.0.0
├── D@1.0.0
├── C@1.0.0
│   └── node_modules
│       └── B@2.0.0
└── E@1.0.0└── node_modules└── B@2.0.0

可以看到 B@2.0 会被安装两次,实际上无论提升 B@1.0 还是 B@2.0,都会存在重复版本的 B 被安装,这两个重复安装的 B 就叫 依赖分身

yarn

yarn也是用扁平化node_modules结构

提升安装速度

在npm安装依赖时,安装任务是串行的。这意味着需要等待一个结束再进行下一个

为了加快安装速度,yarn采用了并行操作。在缓存机制上,yarn会将每个包缓存再磁盘上,在下一次安装这个包时,可以脱离网络实现从磁盘离线安装。

与npm一样的弊端

yarn和npm一样扁平化结构,没有解决幽灵依赖依赖分身的问题

pnpm

内容寻址存储

该策略会将包安装在系统的全局store中,依赖的每个版本只会在系统中安装一次

在引用项目node_modules的依赖时,会通过硬链接软链接在全局store中找到这个文件。为了实现此过程,node_modules下会多出.pnpm目录,而且是非扁平化结构

  • 硬链接:可以理解为源文件的副本,项目安装的其实是副本,它使得用户可以通过路径引用查到全局store中的源文件,而且这个副本根本不占任何空间。同时,pnpm会在全局store里存储硬链接,不同的项目可以从全局store寻到同一个依赖,大大的节省了磁盘空间

  • 软链接:可以理解为快捷方式,pnpm可以通过找到它对应的磁盘目录下的依赖地址

http://www.yayakq.cn/news/721538/

相关文章:

  • 网站建设金网科技下载app登录
  • 下沙经济开发区建设局网站网站开发与建设个人总结
  • 网站建设开发客户开场白品牌定位 品牌
  • 学校网站建设价格wordpress淘宝客自动采集器
  • 网站注册建设怎样手机网站建设
  • 简述网站建设及维护的全过程赣州行业网站建设
  • 首次进入网站时给一个alert怎么做php技术的网站建设实录方案
  • 西安营销网站建设免费模板简历表格
  • 网赌网站怎么建设做网站需要公司备案
  • 湖南网站建设哪家有网站制作是怎样做的
  • 一个wordpress两个站点物流平台运营
  • 优秀企业网站首页网站在布局
  • 路由器屏蔽网站怎么做免费推广的网站
  • 个人网站命名淮安建设网站
  • 模板网站制作时间个人简历在线制作免费
  • 网站配色网一般通过人体的电流超过多大
  • 网站建设课程的感受有帮忙做幻灯片的网站么
  • 自助建站是什么意思推广小程序拿佣金
  • 在哪里可以自己建网站哈尔滨住建局网站首页
  • 贵州润铁祥建设工程有限公司网站外包小程序公司
  • 龙岗营销网站建设公司大理北京网站建设
  • 做网站线上线下价格混乱泰安考试信息网官网
  • 用微软雅黑做网站可以吗怎样做集装箱网站
  • 培训机构网站建设门户网站用什么源码
  • 宁波高端定制网站建设在手机上做网站是什么软件
  • 做网站要找什么软件免费网站代理访问
  • 公司公众网站微信平台建设方案山南网站建设
  • 做高考题的网站网站开发的公司排名
  • 好的排版设计网站手机兼职赚钱一单一结微信群
  • 广州网站建设 领航科技网页制作工具可以发布网页吗