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

package.json版本前缀

前言

执行 npm i 下载依赖后,element-plus出现bug(单页面多个date-picker同时开启),这是 v2.9.0+ 的问题,但是项目 package.json 中版本如下:

"element-plus": "^2.7.6",

乍一看并不是版本问题,但是 package-lock.json 中版本却是 2.9.7

在这里插入图片描述

版本前缀

版本号主要分为三个部分:
如 2.7.6,其中 2 为主版本(major)、7 为次要版本(minor)、6 为补丁版本(patch)。

上述的问题在于版本前缀 ^,执行 npm i 默认会自动拼接该前缀,它允许次要版本 (minor) 和补丁版本 (patch) 更新,但不会更新到新的主版本 (major)。

除此之外还有 ~,它允许补丁版本 (patch) 更新,但不会更新到新的次要版本 (minor) 或主版本 (major)。

所以将 package.json 中的 ^ 改为 ~,或者删除版本前缀即可解决前言的问题。

^ vs ~ 的区别

符号允许的更新范围示例
^3.2.03.2.x3.3.x,但不包括 4.0.03.2.1, 3.3.0, 不包含 4.0.0
~3.2.0只允许 3.2.x,但不包括 3.3.03.2.1, 3.2.5, 不包含 3.3.0

http://www.mrgr.cn/news/96064.html

相关文章:

  • 零拷贝原理面试回答(参考小林Coding)
  • 蓝桥杯题型分布2
  • LLM - R1 强化学习 DRPO 策略优化 DAPO 与 Dr. GRPO 算法 教程
  • 可视化工具TensorBoard
  • AI小白的第八天:梯度下降(含代码实现)
  • AI数据分析:一键生成数据分析报告
  • Unity URP自定义Shader支持RenderLayer
  • 云资源开发学习应用场景指南,场景 1 云上编程实践平台
  • F1C200S编译
  • 【深度学习与实战】2.3、线性回归模型与梯度下降法先导案例--最小二乘法(向量形式求解)
  • Python 异常处理完全指南
  • Ardupilot开源无人机之Geek SDK进展2025Q2
  • ESP32驱动BMP280和MQ4传感器
  • javafx项目结构+代码规范
  • Tabby 一:如何在Mac配置保姆级教程(本地模型替换hugging face下载)
  • 【大模型系列篇】使用Python开发MCP Server及Inspector工具调试
  • 【docker】docker-compose安装RabbitMQ
  • 我的世界1.20.1forge模组开发进阶教程——序列化(1)
  • Python SciPy面试题及参考答案
  • NanoGraphrag原理和数据流讲解