簡體   English   中英

錯誤:無法從 electronjs 中的 app.createWindow 創建圖像

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM