我喜欢保持简单,不需要运行npm run-script eject直到这里,所以我将版本降级回react-scripts@4.0.3而不是5.0.0。 到目前为止,Webpack仍然没有解决这个问题。
可悲的是,这包括了一堆已经退役的软件包。
我尝试了尽可能多的解决方案,但令人惊讶的是,它们都对我无效。除了降级选项。但这又创建了另一个问题。在那个节点版本中,Framer motion无法工作。所以我尝试跟踪控制台日志。打开后,我发现流丢失了。所以我只需使用(npm i stream)安装该依赖项即可解决问题。也许对您来说情况不同。但只需安装缺少的依赖项即可解决问题,而无需编写更多代码。
"assert": "^2.0.0",
"https-browserify": "^1.0.0",
"os": "^0.1.2",
"os-browserify": "^0.3.0",
"react-app-rewired": "^2.1.9",
"stream-browserify": "^3.0.0",
"stream-http": "^3.2.0",
"fs":"^0.0.1-security",
"crypto-browserify": "3.12.0",
"buffer":"^6.0.3",
"node-polyfill-webpack-plugin": "^2.0.1"
现在不再是这样了。请验证您是否需要此模块并为其配置polyfill。
回答: node_modules > react-scripts > config > webpack.config.jsresolve: {
fallback: {
"http": require.resolve("stream-http") ,
"path": require.resolve("path-browserify")
},
}
import res from "express/lib/response"
它已经修复了!
util.isArray
替换为Array.isArray
并从组件中移除util导入。这不仅帮助我们摆脱了这个库,还确保我们不需要进行polyfill。