【问题标题】:Error: ERR_FAILED (-2) loading electronjs when closing and opening new window错误:ERR_FAILED (-2) 在关闭和打开新窗口时加载 electronjs
【发布时间】:2021-12-04 03:47:47
【问题描述】:

我正在尝试打开一个类似窗口的应用加载程序,该窗口将在运行应用程序时首先打开,只是为了覆盖一些正在运行的异步脚本,完成后,加载程序窗口将关闭并打开主窗口,以下是我的尝试

let mainWindow;
let win;
let loaderwin;

// CREATE WINDOW
const createMainWindow = async () => {
    win = new BrowserWindow({
        title: app.name,
        show: false,
        width: 1024,
        height: 768,
    });

    if( isdebug ) win.webContents.openDevTools();

    win.on('ready-to-show', () => {     
        win.maximize();
        win.show();
    });

    win.on('closed', () => {
        mainWindow = undefined;
    });

    await win.loadFile(path.join(__dirname, 'main-window.html'));

    return win;
}

const createLoaderWindow = async () => {
    loaderwin = new BrowserWindow({
        title: app.name,
        show: false,
        width: 600,
        height: 300,
        frame : false,
        webPreferences : {
            devTools : false
        }
    });

    loaderwin.on('ready-to-show', () => {
        loaderwin.show();
    });

    loaderwin.on('closed', () => {
        // on close open the mainwindow
        mainWindow = createMainWindow();
    });

    await loaderwin.loadFile(path.join(__dirname, 'loader.html'));

    return loaderwin;
}

// Prevent multiple instances of the app
if (!app.requestSingleInstanceLock()) {
    app.quit();
}

app.on('second-instance', () => {
    if (mainWindow) {
        if (mainWindow.isMinimized()) {
            mainWindow.restore();
        }

        mainWindow.show();
    }
});

app.on('window-all-closed', () => {
    if (!is.macos) {
        app.quit();
    }
});

app.on('activate', async () => {
    if (!mainWindow) {
        mainWindow = await createLoaderWindow();
    }
});


(async () => {
    
    await app.whenReady();

    Menu.setApplicationMenu(null);
    mainWindow = createLoaderWindow();

    await syncfunct();

    ( require('./server.js'))();

    // done, close loader window
    loaderwin.close();

})();

但它给了我这个错误

错误:ERR_FAILED (-2) 加载 'file:///D:\web-development\github\tordyak-app\loader.html' 在rejectAndCleanup (electron/js2c/browser_init.js:217:1457) 在 Object.stopLoadingListener (electron/js2c/browser_init.js:217:1832) 在 Object.emit (events.js:315:20) { errno: -2, code: 'ERR_FAILED', url: 'file:///D:\web-development\github\tordyak-app\loader.html' }

非常感谢任何帮助、想法和建议。提前谢谢你。

【问题讨论】:

    标签: javascript electron electron-vue


    【解决方案1】:

    https://github.com/electron/electron/issues/18857

    • 检查 URL 是否正确:在 Firefox 中打开它(而不是在默认情况下不允许文件 url 的 Chrome 中)
    • 检查您的预加载 JavaScript 脚本是否正常
    • 检查您的窗口配置是否正常

    此错误可能与路径错误或窗口初始化期间出现错误等各种问题有关。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-01
      • 1970-01-01
      相关资源
      最近更新 更多