找不到模块'fs/promises' Electron JS

sti*_*rn1 7 node.js vue.js electron electron-builder

早上好,

我在 Vue JS 中创建了一个程序,它与我在 main.js 文件中创建的 API 连接以执行系统命令。

我遇到的问题是,在使用电子编译生产时,出现以下错误:

错误

我使用命令 npm run electron: build

当我使用 npm run electron:serve 工作时没有问题

任何人都知道为什么会出现错误以及如何修复它?谢谢

小智 32

降级电子“电子构建器”:“^22.10.5”,或将nodejs升级到14+ v

  • 升级到节点 v14 对我有用。谢谢! (6认同)

小智 14

在这种情况下,我以这种方式解决了问题:

const fs = require('fs').promises;
Run Code Online (Sandbox Code Playgroud)

代替:

const fs = require('fs/promises');
Run Code Online (Sandbox Code Playgroud)


小智 12

降级到"electron-builder": "~22.10.5"对我有用


小智 11

几天前我也遇到了这个问题。我意识到试图解决另一个问题,我删除了node_modules文件夹和package-lock.json文件,然后运行npm install命令。这使得构建失败并显示“fs/promises”。这个问题有2个解决方案:

  1. 下载最新的稳定 Node 版本。这应该有 'fs/promises' 模块并将解决这个问题。
  2. 删除node_modules文件夹并带回旧package-lock.json文件以确保软件包版本保持不变。然后运行npm install命令,问题应该得到解决。


Cel*_*els 10

就我而言,我用来nvm管理多个节点版本。

在 npm 包安装期间以及整个开发过程中,我使用了它,但由于某种原因,当我后来尝试捆绑我的程序时,Node v14我的终端指向了。Node v12

将其切换回Node v14使用nvm use 14解决了我的问题。

因此,请确保您使用正确的节点版本。


小智 5

升级到electron-updater@5.0.0。它有补丁更改替换fs/promisesfs-extra支持电子的旧版本。