本文介绍: 在运行React原因呢是webpack5在精简后,移除了nodejs核心模块的polyfill自动引入,所以需要手动引入,如果打包过程中有使用到nodejs核心模块,webpack会提示进行相应配置。
-
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default. This is no longer the case. Verify if you need this module and configure a polyfill for it. If you want to include a polyfill, you need to: - add a fallback 'resolve.fallback: { "path": require.resolve("path-browserify") }' - install 'path-browserify' If you don't want to include a polyfill, you can use an empty module like this: resolve.fallback: { "path": false } webpack compiled with 26 errors
-
原因呢是
webpack5
在精简后,移除了nodejs
核心模块的polyfill
自动引入,所以需要手动引入,如果打包过程中有使用到nodejs
核心模块,webpack
会提示进行相应配置。 -
【不推荐】方式一:
webpack.config.js
方式-
执行
$ npm run eject
是否webpack
配置文件,找到config/webpack.config.js
,搜索下resolve:
配置,关闭一下配置:resolve: { fallback: { "path": false, // 上面报错说可以关闭这个,其他的可以注释看报错不报错,报错就继续追加关闭 "assert": false, "stream": false, "constants": false, "util": false, "fs": false, }, ... }
resolve: { fallback: { "path": require.resolve("path-browserify"), // 使用可能需要安装一下 npm i path-browserify,先重启看报错不报错,报错在安装 ... }, ... }
-
-
【推荐】方式二:
craco.config.js
方式,这样就不需要释放webpack
配置-
附:@craco/craco 安装,可以理解为是
webpack.config.js
的外部扩展。const path = require('path') module.exports = { // webpack 配置 webpack: { // 配置别名 alias: { // 约定:使用 @ 表示 src 文件所在路径 "@": path.resolve(__dirname, "src") }, // 这种方式是无效的,错误写法 // resolve: { // fallback: { // "path": false, // "util": false, // ... // } // }, // 这种方式才对的 // configure: (webpackConfig, { env, paths }) => { // // eslint-disable-next-line no-param-reassign // webpackConfig.resolve.fallback = { // "path": false, // "util": false, // "url": false, // "http": false, // "https": false, // "stream": false, // "assert": false, // "querystring": false, // "zlib": false // } // return webpackConfig // }, // 也可以这么写 configure: { resolve: { fallback: { "path": false, "util": false, "url": false, "http": false, "https": false, "stream": false, "assert": false, "querystring": false, "zlib": false } } } } }
-
原文地址:https://blog.csdn.net/zz00008888/article/details/133018804
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_11451.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。