问一下怎么在不升级包的情况更改 node_module 包的依赖项版本?

2023-01-10 15:25:41 +08:00
 lifesimple



package-lock.json 文件,因为 json5 有漏洞,然后需要把更新为 1.0.2 版本,感觉属于大版本升级了。直接改好像不生效,npm install ,还是会变为依赖 0.5.1 。
不想升级 babel-core 到 7 ,怕影响其他东西。
有没有方法不升级 babel-core 只做 json5 的升级,还是说不太可能去实现。

ps: 本来么又不是不能用,奈何公司有个流水线平台 xray 代码检测,得修掉这种高危漏洞才能提测。
感谢
1049 次点击
所在节点    问与答
9 条回复
zsj1029
2023-01-10 15:29:04 +08:00
1 、直接把版本号改掉,npm i
2 、找到相关调用代码,修改成新用法
TomVista
2023-01-10 15:44:40 +08:00
npm i json5@1.0.2
lifesimple
2023-01-10 15:50:22 +08:00
@TomVista 项目本身没有用到这个 试过也没效果
@zsj1029 嗯 我上面就是直接更改了 package-lock.json 中 babel-core 里面 json5 的版本号,改完后我 npm i ,又默认变回了 0.5.1
TomVista
2023-01-10 16:05:08 +08:00
没认真看是 babel-core,这种情况只能 fork 一份 babel-core,自己改改了,
gouflv
2023-01-10 16:51:59 +08:00
webpack resolve alias
duan602728596
2023-01-10 18:41:53 +08:00
npm overrides ,yarn resolutions
duan602728596
2023-01-10 18:43:05 +08:00
还有就是虽然你不想升级,但是 babel 的版本确实很旧了
Daming
2023-01-10 18:49:37 +08:00
@duan602728596 #6
yarn overrides ,pnpm resolutions
okex
2023-01-10 18:53:44 +08:00
yarn patch-package

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/907932

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX