我刚开始用Electron。
这是我的preload.js
的开始:
const { contextBridge } = require('electron');
require('dotenv').config();
// ...
当我使用npm start
时,应用程序启动正常,只是preload.js没有做任何事情。我打开开发者工具,看到以下错误:
Error: module not found: dotenv
at preloadRequire (...)
...
然后我检查了我的npm-shrinkwrap.json
:
"devDependencies": {
// ...
"dotenv": "^16.0.3",
"electron": "^22.1.0"
}
嗯,它确实有dotenv
。
那么,如何才能使preload.js
能够使用dotenv
呢?
1条答案
按热度按时间b1payxdu1#
多亏了Alexander Leithner,我解决了这个问题。
在documentation中,它说“沙箱”限制了我可以从preload.js“要求”什么;因此要禁用它,请在
BrowserWindow
选项的webPreferences
中设置sandbox: false
或nodeIntegration: true
。示例