你好,我在Vue JS中创建了一个程序,它与我在main.js文件中创建的API连接,以执行系统命令。我遇到的问题是,当编译生产与电子我得到以下错误:
我使用命令npm运行电子:建筑物当我使用npm运行electron:serve工作没有问题有人知道为什么会出现这个错误以及如何修复吗?谢谢
vyu0f0g11#
几天前我也遇到过这个问题。我意识到,为了解决另一个问题,我删除了node_modules文件夹和package-lock.json文件,然后运行了npm install命令。这使得构建失败,并显示“fs/promises”。有两种解决方案可以解决这个问题:1.下载最新的稳定节点版本。此版本应包含“fs/promises”模块并将修复此问题。1.删除node_modules文件夹并恢复旧的package-lock.json文件,以确保软件包版本保持不变。然后运行npm install命令,问题应该得到解决。
node_modules
package-lock.json
npm install
nwsw7zdq2#
降级电子“电子构建器”:“^22.10.5”,或将节点j升级到14+ v
8nuwlpux3#
我可以降级到"electron-builder": "~22.10.5"
"electron-builder": "~22.10.5"
mrfwxfqh4#
在这种情况下,我解决了这个问题的方式:
const fs = require('fs').promises;
而不是:
const fs = require('fs/promises');
guz6ccqo5#
在我的例子中,我使用nvm来管理多个节点版本。在npm包安装期间,以及整个开发过程中,我使用了Node v14,但由于某种原因,当我后来尝试绑定程序时,我的终端指向Node v12。使用nvm use 14将其切换回Node v14解决了我的问题。因此,请确保使用正确的节点版本。
nvm
Node v14
Node v12
nvm use 14
wi3ka0sx6#
升级到electron-updater@5.0.0。它有补丁程序更改,将fs/promises替换为fs-extra,以支持旧版electronic。
electron-updater@5.0.0
fs/promises
fs-extra
41zrol4v7#
当我不使用electron时,得到了同样的错误“找不到模块'fs/promises'”。所以问题不仅与电子有关通过将nodejs从v13.9.0升级到v14.19.3解决了这个问题
hyrbngr78#
如果这种情况发生在你身上(我也没有使用Electron),你必须像我一样留在节点12上(因为你维护的代码是古老的),祈祷你能找到你使用的一个有效的npm-shrinkwrap.json文件,然后通过package.json,强制每个版本都是shrinkwrap文件中的内容,rm -rf node_modules,然后npm安装。
ar5n3qh59#
在将electron-builder从v. 21.4.0升级到23.0.2后,我遇到了同样的问题,使用以下命令进行了更新: sudo npm install -g electron-builder@23.0.2我解决了更新npm,然后是node.js。1.更新npm:sudo npm install -g npm@latest 1.从https://nodejs.org安装nodejs现在,它可与以下产品配合使用:
electron-builder
v. 21.4.0
23.0.2
sudo npm install -g electron-builder@23.0.2
npm
sudo npm install -g npm@latest
nodejs
electron-builder --version
npm --version
node --version
9条答案
按热度按时间vyu0f0g11#
几天前我也遇到过这个问题。我意识到,为了解决另一个问题,我删除了
node_modules
文件夹和package-lock.json
文件,然后运行了npm install
命令。这使得构建失败,并显示“fs/promises”。有两种解决方案可以解决这个问题:1.下载最新的稳定节点版本。此版本应包含“fs/promises”模块并将修复此问题。
1.删除
node_modules
文件夹并恢复旧的package-lock.json
文件,以确保软件包版本保持不变。然后运行npm install
命令,问题应该得到解决。nwsw7zdq2#
降级电子“电子构建器”:“^22.10.5”,或将节点j升级到14+ v
8nuwlpux3#
我可以降级到
"electron-builder": "~22.10.5"
mrfwxfqh4#
在这种情况下,我解决了这个问题的方式:
而不是:
guz6ccqo5#
在我的例子中,我使用
nvm
来管理多个节点版本。在npm包安装期间,以及整个开发过程中,我使用了
Node v14
,但由于某种原因,当我后来尝试绑定程序时,我的终端指向Node v12
。使用
nvm use 14
将其切换回Node v14
解决了我的问题。因此,请确保使用正确的节点版本。
wi3ka0sx6#
升级到
electron-updater@5.0.0
。它有补丁程序更改,将fs/promises
替换为fs-extra
,以支持旧版electronic。41zrol4v7#
当我不使用electron时,得到了同样的错误“找不到模块'fs/promises'”。
所以问题不仅与电子有关
通过将nodejs从v13.9.0升级到v14.19.3解决了这个问题
hyrbngr78#
如果这种情况发生在你身上(我也没有使用Electron),你必须像我一样留在节点12上(因为你维护的代码是古老的),祈祷你能找到你使用的一个有效的npm-shrinkwrap.json文件,然后通过package.json,强制每个版本都是shrinkwrap文件中的内容,rm -rf node_modules,然后npm安装。
ar5n3qh59#
在将
electron-builder
从v. 21.4.0
升级到23.0.2
后,我遇到了同样的问题,使用以下命令进行了更新:sudo npm install -g electron-builder@23.0.2
我解决了更新npm,然后是node.js。
1.更新
npm
:sudo npm install -g npm@latest
1.从https://nodejs.org安装
nodejs
现在,它可与以下产品配合使用:
electron-builder --version
)npm --version
)node --version
)