Electron+Angular项目报无法解析fs模块错误,求适配的Electron版本
适配版本推荐
结合你当前的Angular 12.2.13、Node 16.13.0、TypeScript 4.3.5的依赖栈,选择Electron 14.2.9或者Electron 15.5.7版本即可避免基础兼容性导致的模块解析错误。
额外必填配置
该报错本质是Angular 12+ 版本默认移除了webpack对Node.js核心模块的polyfill,且默认禁止前端编译上下文引入Node专属模块导致的,仅更换版本大概率还是会触发报错,需同步做以下调整:
- 不要在Angular渲染层代码中直接引入
electron包,所有Electron API调用统一通过preload脚本的上下文桥接能力暴露给渲染层 - 如果确需在编译阶段识别Electron相关模块,可按以下步骤配置:
- 安装
@angular-builders/custom-webpack依赖,替换angular.json中默认的@angular-devkit/build-angularbuilder - 新增自定义webpack配置文件,内容如下:
module.exports = { externals: { electron: 'commonjs electron', fs: 'commonjs fs', path: 'commonjs path' } };- 在angular.json的构建配置项中添加允许commonjs依赖的声明:
"allowedCommonJsDependencies": ["electron"] - 安装
内容的提问来源于stack exchange,提问作者vrreddy1234
相关产品推荐
相关产品推荐

