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

为何在 node 项目中使用固定版本号,而不使用 ~、^?

以语雀 文档为准

  1. 使用 ~、^ 时吃过亏
  2. 希望版本号掌握在自己手里,作者自己升级(跟随官方进行升级,就算麻烦作者,也不想麻烦使用者)
  3. 虽然 pnpm 很好用,但是不希望在项目中用到(临时性解决问题可以选择),原因是:
    1. 希望依赖控制掌握在自己手里
    2. 遇见依赖问题就直接去解决,而不是寻求工具的帮助,如果这类问题多了,就像滚雪球一样,有一天工具解决不了了,那麻烦就打了。
  4. 举例:
    如果使用 ~、^,可能在你开发、测试时全都是正常的,但是在你重新检查项目安装依赖前、部署前,依赖发布了新版,出现下列情况时,将运行/发布失败,造成事故。
    如果你没遇见过,那只能代表你比较幸运,但幸运并不时刻伴随你~
    1. axios 从 1.2.1 升级到 1.2.5 时,AxiosRequestConfig 改名为 InternalAxiosRequestConfig,导致项目无法运行,参见提交记录:https://gitee.com/xuxiaowei-cloud/xuxiaowei-cloud/commit/64117ef0b17ca64001f6e90e506285e15686d801
    2. element-plus 从 2.2.16 升级到 2.2.18 时,TabPanelName 改名为 TabPaneName,导致项目无法运行,参见提交记录:https://gitee.com/xuxiaowei-cloud/xuxiaowei-cloud/commit/0636daef59f2b4434677dd8708cc9479e7e1d2f2
http://www.lryc.cn/news/41258.html

相关文章:

  • leetcode -- 876.链表的中间节点
  • 企业网络安全防御策略需要考虑哪些方面?
  • 文心一言 vs. GPT-4 —— 全面横向比较
  • 【进阶数据结构】二叉搜索树经典习题讲解
  • PyTorch 之 神经网络 Mnist 分类任务
  • 如何实现用pillow库来实现给图片加滤镜?
  • 微分中值定理
  • redis 存储一个map 怎么让map中其中一个值设置过期时间,而不是过期掉整个map?
  • LeetCode:704. 二分查找
  • Java 到底是值传递还是引用传递?
  • Apollo 配置变更原理
  • 聊聊「订单」业务的设计与实现
  • 血细胞智能检测与计数软件(Python+YOLOv5深度学习模型+清新界面版)
  • 高速PCB设计指南(十五)
  • GPT-4:我不是来抢你饭碗的,我是来抢你锅的
  • Scala环境安装【傻瓜式教程】
  • js实现一个简单的扫雷
  • 禁用非必需插件,让 IDEA 飞起
  • 解决win10任何程序打开链接仍然为老旧IE的顽固问题[修改默认浏览器]
  • 计算机网络体系结构——“计算机网络”
  • 基于微信小程序的校园二手交易平台小程序
  • Linux lvm管理讲解及命令
  • GPT-4,终于来了!
  • 面部表情识别3:Android实现表情识别(含源码,可实时检测)
  • 【IT女神勋章挑战赛名单公布】:看看谁获奖啦!
  • ThreadPool线程池源码解析
  • Python中 5个非常有用的单行代码
  • 蓝牙模块各种工作模式
  • 修剪灌木[蓝桥杯2022初赛]
  • Python的知识点运用-1(日期转换)