npm 的语义版本控制、解决控制台Prop being mutated: “placement“报错

前言

整理这个知识点只能说是巧合,由于项目不断迭代导致使得项目体积过大,导致了内存溢出,解决方式见:vue项目内存溢出的解决 。由于删掉了node_modulespackage-lock.json 后重新下载依赖导致控制台报出了如下警告
在这里插入图片描述

解决

百度查询了一下,原因是:

当elementUi自动升级到2.15.6以上版本时,浏览器控制台会出现此报错。
现在看到gitlab上也有很多人遇到了这个问题,都是在2.15.8版本左右出现的报错
因为elementUi升级到2.15.6以上版本的时候在date-picker组件里面添加了一行直接修改placement的代码

解决方式也毕竟简单就是不使用2.15.6以上版本 ,然后打开自己的package.json 一看是 ^2.13.0 ,结果控制台还是报错,后来才知道还需要把^ 给去掉才行。具体原因看下面的npm 的语义版本控制

npm 的语义版本控制

参考(抄袭):http://nodejs.cn/learn/semantic-versioning-using-npm

语义版本控制

语义版本控制的概念很简单:所有的版本都有 3 个数字:x.y.z。

  • 第一个数字是主版本。
  • 第二个数字是次版本。
  • 第三个数字是补丁版本。

当发布新的版本时,不仅仅是随心所欲地增加数字,还要遵循以下规则:

  • 当进行不兼容的 API 更改时,则升级主版本。
  • 当以向后兼容的方式添加功能时,则升级次版本。
  • 当进行向后兼容的缺陷修复时,则升级补丁版本。

该约定在所有编程语言中均被采用,每个 npm 软件包都必须遵守该约定,这一点非常重要,因为整个系统都依赖于此。
因为 npm 设置了一些规则,可用于在 package.json 文件中选择要将软件包更新到的版本(当运行 npm update 时)。

符号
在这里插入图片描述
这些规则的详情如下:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41897680/article/details/125829733
今日推荐