gpt4 book ai didi

javascript - 尽管nodeIntegration为true,但 Electron -需求未定义

转载 作者:行者123 更新时间:2023-12-03 12:32:11 25 4
gpt4 key购买 nike

我的问题是-我有一个main.js文件和一个functions.js文件,我希望在其中放置一些功能。但是,每当我在那个functions.js文件中使用require时,都会出现错误,并且require未定义。
我读过有关其他人遇到类似问题的帖子,但在这种情况下,将nodeIntegration设置为true会有所帮助。那就是我从一开始就拥有的。我知道此解决方案的问题,但目前我不需要此应用程序的安全性,因此,如果可行,我可以使用此解决方案。没有。
我尝试了预加载,但是我认为它只是nodeIntegration解决方案的“更安全”等效项。作为一个等效项,它也不起作用。你能帮助我吗?
我的代码:
main.js

const { app, BrowserWindow, ipcMain } = require('electron')

function createWindow () {
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true,
contextIsolation: true,
preload: 'functions.js'
}
})
win.maximize();
win.loadFile('index.html');
}

app.on('ready', function() {
createWindow();
createOpenDialog();
});
functions.js (从字面上讲,这是代码失败所需的一切)
const electron = require('electron');
index.html
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="main.css">
<meta charset="UTF-8">
<title>Hello World!</title>
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';" />
</head>
<body style="background: white;">
<script src="functions.js">
</script>
</body>
</html>

最佳答案

因此,我没有尝试过的一件事是将contextIsolation设置为false 。至少看起来像这样,因为我确定自己尝试过。无论如何,这似乎可以解决问题,尽管我将需要学习它的确切作用。我现在可以做“require”,并且已经通过使用ipcRenderer进行了测试。

关于javascript - 尽管nodeIntegration为true,但 Electron -需求未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66034888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com