新的webpack配置。我在我的应用程序中得到这个错误,它不能编译。根据SO的无数建议,我已经尝试了我的package.json中的设置(或它的变体):
"browser": {
"fs": false,
"net": false
}
在webpack.config中:
node: { fs: 'empty',
net: 'empty' }
它会编译,但它所做的只是让文件在localhost上变为空白。
网络包版本:4.46.0节点:16.14.0 windows 11
任何帮助都非常感谢。
3条答案
按热度按时间jobtbby31#
Webpack允许您将与浏览器兼容的代码模块打包成一个产品包,以便发送到浏览器。
fs
和net
模块不是浏览器兼容的代码,它们依赖于Node.js提供的API,而浏览器不提供这些API。因此,试图捆绑他们的错误,如果你告诉网页将他们视为空,然后生成的捆绑包将不包括他们。
2nc8po8w2#
我花了一段时间才弄明白,我发现这可能是由于不兼容的Node-gyp和Node-sass包。我的应用程序现在运行良好。
同样,错误:
"未找到模块:错误无法解析...""中的"fs"找不到模块:错误无法解析...中的"net"
请按以下顺序尝试此操作:
1.删除package.lock.json
1.更新/安装这些软件包,使它们彼此兼容。
以下版本适用于节点16.14.0:
"节点会话":"^6.0.0"
"node-gyp":"^7.1.0"(在我的例子中-npm安装-g node-gyp@7. 1. 0)"sass加载程序":"^10.0.0"
kyks70gy3#
请确保您没有从express甚至
json
或其他地方导入以下内容对于任何使用React的人(我在react中遇到过),我甚至读过NextJs,但还没有测试过。
伙计,我做了所有的事情,比如配置覆盖和节点模块webpack配置文件更新,也把react脚本版本5改成了4,但是没有任何效果。但是我一删除
response
,它就起作用了。那一行只让我进入了7个小时的调试模式。
但总是享受它:)