从外部脚本文件中设置Interval()后退出电子应用程序



为更清晰而编辑。

我正在尝试制作一个启动屏幕小程序——开始学习nodejs和electron。

我想创建一个小程序,启动后每10秒显示一些消息,然后退出。

我把它建立在Discord应用程序和Teams的基础上,在那里他们有一个弹出的加载屏幕,上面有一个进度条,完成后加载整个应用程序。

我想知道如何在";加载完整的应用程序";部分开始介绍如何完全关闭防溅屏。

目前我有一个index.jsindex.htmlmain.js

index.js是电子浏览器窗口。index.html是主渲染页面,main.js是根据以下时间切换innerHTML的计时器:

// main.js
var startTime       = 0,
totalTime       = 10,
timeBuffer      = 2,
totalPercent    = 0,
timeCounter     = setInterval( progress, 1000 );
function progress() {
if( (startTime += 1) >= (totalTime + timeBuffer + 1) ) {
// quit app (1)
} else {
// show messages here
}
}

在代码中的(1)处,我尝试在app.close();中添加,但由于没有在app中添加,所以失败了。我试着把它加进去,但也不起作用。

我尝试添加:

// main.js
const { ipcRenderer } = require('electron');
ipcRenderer.send('close-me');
//index.js
ipcMain.on( 'close-me', (evt, arg) => {
app.quit();
});

但这也没用。我仍在努力理解index.js和你可能为该应用程序编写的其他脚本之间的关系,但我认为完全退出该应用程序会很容易。

在这种情况下,app.quit()似乎不起作用,但app.close(0)起作用了。

仔细阅读这些文档并没有说明任何原因,但以防其他人也遇到这个问题。

setInterval()存储为变量,并使用JavaScriptclearInterval(variable)作为页面退出操作。

相关内容

最新更新