[英]Electronjs "App threw an error during load, ReferenceError: require is not defined"
[英]Error : image could not be created from at app.createWindow in electronjs
我正在學習電子。 我剛開始的一個示例 electron 項目之一出現此錯誤。
錯誤:無法從 C:\Users\GS\Desktop\electron\example4\index.js 21:3 的 app.createWindow 創建圖像 這是 index.js 文件代碼
const { app, BrowserWindow } = require('electron')
function createWindow () {
const mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
}
app.on("ready", createWindow);
我不知道為什么會這樣,但我復制了一天前在另一個示例項目中工作的相同代碼。 可能這是一個非常基本的問題,但我試圖從過去的 4-5 小時弄清楚,但我仍然沒有找到任何解決方案。 任何幫助,將不勝感激
變量mainWindow
必須在 function createWindow ()
之外聲明,否則它所代表的BrowserWindow
object 在 ZC1C425268E68385D1AB5074C17 退出后將不會保持有效(將被垃圾收集)。 這應該可以解決問題:
const { app, BrowserWindow } = require('electron')
let mainWindow = null;
function createWindow () {
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
}
app.on("ready", createWindow);
上面的答案(@free-dom)是正確的,盡管沒有必要在mainwindow
之外聲明主窗口變量。 好像您沒有在mainwindow
之外聲明主窗口,那么您必須像這樣調用app.whenReady().then(createWindow)
const { app, BrowserWindow } = require('electron')
function createWindow () {
let mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
})
}
app.whenReady().then(createWindow);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.