在Electron下载进度中使用autoupdater

时间:2018-11-25 22:16:30

标签: auto-update

希望我能正确地详细介绍(新手),如果没有,请提及以便我学习。

我的main.js中具有以下功能:

autoUpdater.on('download-progress', (progressObj) => {
let log_message = "Download speed: " + progressObj.bytesPerSecond;
log_message = log_message + ' - Downloaded ' + progressObj.percent + '%';
log_message = log_message + ' (' + progressObj.transferred + "/" + progressObj.total + ')';
sendStatusToWindow(log_message);

})

然后我的Landingpage.html中有以下脚本标记

<script>
        // Listen for messages
        ipcRenderer.on('info', function (event, text) {
            var container = document.getElementById('info');
            var message = document.createElement('div');
            message.innerHTML = text;
            container.appendChild(message);
        })
    </script>

一切正常,应用程序会看到有更新,下载并安装。

但是,当下载更新时,该消息会自动追加(我知道它是container.appendChild(message)行),但是无论我尝试什么,我都无法替换该消息而不是追加。

请让我知道我还错过了哪些其他关键信息。

谢谢

Jason

1 个答案:

答案 0 :(得分:0)

您每次都在不首先清除内容的情况下追加到容器,因此可以尝试使用以下方法首先清除内容:

container.innerHTML = ''

然后附加子元素时,该子元素应该是容器中的唯一元素。