我正在用电子开发我的应用程序,并且正在使用电子更新程序显示一个窗口,询问用户是否要下载新的应用程序版本。 我试图像这样在下载过程中在窗口中显示进度条。
我尝试使用进度条,但是如果安装了进度条,电子更新程序将停止工作。现在,我只能看到以开发模式进入电子外壳的过程。
autoUpdater.on('download-progress', (progressObj) => {
let log_message = "Scaricamento aggiornamenti in corso... \n";
log_message = log_message + "Velocita\' scaricamento: " +
progressObj.bytesPerSecond;
log_message = log_message + ' - Scaricati ' + progressObj.percent + '%';
log_message = log_message + ' (' + progressObj.transferred + "/" +
progressObj.total + ')';
log.log('info', log_message);
})
提前谢谢
答案 0 :(得分:0)
(我不清楚您要问的是什么,而且我没有足够的声誉来添加评论……所以我会尽力而为)
我假设autoUpdater在主进程中,而不在渲染器中。因此,您需要做的第一件事是将数据从进度更新中获取到正确的渲染器。您可以使用电子的ipcMain
和ipcRenderer
模块进行此操作。
在渲染器进程中拥有数据后,需要将其移至进度条。如果您使用的是redux,则可以调用商店的dispatch(),并将downloadProgress动作传递给它。
在使用redux的应用程序中,我在主进程中创建一个DownloadProgress
操作,然后通过IPC将其发送到渲染器。我建议您这样做,因为您可能也想通过DownloadCancelled
和DownloadComplete
操作。
如果这没有帮助,请进行以下澄清: