0

具有core-js v3.20.0子依赖的Reactjs项目因错误而中断页面o.next is not a function.

使用npm ls core-js我看到react-app-polyfill@2.0.0需要core-js并且正在安装最新版本(3.21.1准确地说是 - )依次破坏页面。(固定在屏幕底部)

这更多是一个为什么的问题。这是一个难以重现的错误,因此对于没有代码示例表示歉意,只是想知道是否有其他人遇到过此错误,并想就 core-js 3.20.0(损坏)和 3.7.0(工作)之间的主要区别分享想法. 主要原因是我不想被锁定到这个版本。想知道是否是另一个包引发了这个冲突崩溃。

使用的依赖项示例:

 - "react": "17.0.2", 
 - "react-app-polyfill": "2.0.0",
 - "ts-loader": "9.2.3",
 - "ts-node": "10.1.0",
 - "typescript": "4.3.5",
 - "webpack": "5.66.0",
 - "webpack-cli": "4.9.1",
 - "webpack-dev-server": "4.7.3",
 - "webpack-merge": "5.8.0"

罪魁祸首的文件: vendor/tslib.js

修复: 将 core-js 子依赖项从 3.20.0 降级到 3.7.0 修复页面并删除错误消息o.next is not a function. 为了强制执行此操作,我添加了一个 preinstall 挂钩来安装 core.js 的工作版本。

例子:

scripts: {
"preinstall": "npx npm-force-resolutions",
},
"resolutions": {
    "core-js": "3.7.0"
},
4

0 回答 0