javascript - Package-lock.json 结构怪异,体积翻了一番
问题描述
嘿,当我运行 npm install 并且正在生成我的包锁定文件时,它正在以一种奇怪的结构构建文件。现在我已经与我们的其他开发人员核实过,尝试在相同的分支上进行模拟,但他们没有遇到同样的问题。所以这对我来说一定是一个本地问题。
我最近确实更新了节点,但是我运行的节点版本与其他开发人员相同,但他们没有遇到问题。
节点版本 - 14.17.3 npm 版本 - 7.20.1
起初我认为这可能是节点问题,但我们使用的是同一版本。我尝试删除 node_modules 和 json 锁并执行新的 npm i 但遇到同样的问题。
运行 npm run bundle 时,它似乎构建正常,但文件结构对我来说看起来很奇怪,而且它的行大小增加了一倍。我不能把文件的全部内容放在这里,因为它有超过 50,000 行。但我可以给你一个文件的快照,从它应该如何开始到现在如何。
前:
{
"name": "@culture-trip/header-ui-module",
"version": "8.12.11",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@babel/code-frame": {
"version": "7.12.13",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz",
"integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==",
"dev": true,
"requires": {
"@babel/highlight": "^7.12.13"
}
},
"@babel/compat-data": {
"version": "7.13.8",
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.13.8.tgz",
"integrity": "sha512-EaI33z19T4qN3xLXsGf48M2cDqa6ei9tPZlfLdb2HC+e/cFtREiRd8hdSqDbwdLB0/+gLwqJmCYASH0z2bUdog==",
"dev": true
},
后:
{
"name": "@culture-trip/header-ui-module",
"version": "8.12.11",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@culture-trip/header-ui-module",
"version": "8.12.11",
"license": "TCT",
"dependencies": {
"axios": "^0.21.1",
"js-cookie": "^2.2.1",
"lodash.debounce": "^4.0.8",
"react-autocomplete": "github:culture-trip/react-autocomplete#415ebd07c1b5a9037513a76d82d6e0fa54b7fc50",
"react-router-dom": "^5.2.0"
},
如您所见,实际结构已更改。我真的不确定这里发生了什么,所以跳起来有人可以提供帮助。
解决方案
自从您从旧版本更新后,您package-lock.json
使用的文件lockfileVersion: 2
可能已更改。npm
"lockfileVersion": 2,
新文件被展平以提高读写时的性能。这会无意中使文件更长。
如果你想继续使用旧版本,lockfile
你必须将你的 npm 版本降级到 7 以下。
推荐阅读
- excel - 更改列中过滤值的过滤单元格背景颜色
- python - 无法使用索引访问列表
- c - Valgrind malloc 在 C 中无效的写入和读取
- javascript - 单击登录页面上的眼睛图标时密码显示隐藏
- ios - UIBarButtonItem 显示?点击它时带有正方形
- java - 如何在 Java Spring Boot MVC 中提供静态和上传的内容
- python - 带有 aioboto3 的 Python 3 asyncio 似乎是顺序的
- keycloak - 如何为 Keycloak 电子邮件主题提供自定义输入?
- javascript - 在 Google Chrome 中呈现奇怪的 Obj 符号
- javascript - 如何使用 supertest 附加多个表单数据字段?