electron-vue中如何处理A JavaScript error occurred in the main process

electron-vue中如何处理 A JavaScript error occurred in the main process

报错信息
Uncaught Exception:
Error: Object has been destroyed
    at IpcMain.<anonymous> (/Users/js103/pkorg/chat-os/dist/electron/main.js:7885:20)
    at IpcMain.emit (events.js:208:15)
    at WebContents.<anonymous> (electron/js2c/browser_init.js:3883:15)
    at WebContents.emit (events.js:203:13)
需求是登录登出并改变窗口大小且居中显示

ipcmain.js

import {
    BrowserWindow,
    ipcMain
} from "electron";

let mainWindow = new BrowserWindow({
// 'x': mainWindowState.x,
// 'y': mainWindowState.y,
// 'width': mainWindowState.width,
// 'height': mainWindowState.height,
height: 750,
width: 1000,
    useContentSize: true,
    webPreferences: {
        nodeIntegration: true, // 添加这一配置
    },
    devTools: false
});

ipcMain.on('synchronous-message', (event, arg) => {
    if (arg === 'center') {

        mainWindow.center()
        console.log("window 居中显示")

        // mainWindowState.manage(mainWindow);

    }
})

ipcRenderer.js

let {ipcRenderer} = window.require('electron')
export const ipcTowCenter = () => {
    return new Promise(resolve => {
        ipcRenderer.send('synchronous-message', "center")
        resolve()
        // ipcRenderer.on('asynchronous-reply', (event, result) => {
        //     resolve(result);
        // })
    });
}

进入登录界面时调用

import {ipcTowCenter,ipcToResize} from '../../../tool/ipcRenderer.js'

this.$once("hook:mounted", () => {
     // 进入页面不让调整窗口
    //ipcToResize(false).then(()=>{})
    ipcTowCenter().then(()=>{})
});

之后登入登出 都会报上面的弹窗错误
版本是 v7.3.3

希望大佬帮助一下,,谢谢了~