Download 将进度发送到electron dl中的渲染器进程
我最近尝试使用electron dl来处理我的electron应用程序的内容更新。我试图在渲染器进程中向用户显示下载百分比,但找不到从主进程发送的正确语法 我目前的代码是: 主流程:Download 将进度发送到electron dl中的渲染器进程,download,electron,Download,Electron,我最近尝试使用electron dl来处理我的electron应用程序的内容更新。我试图在渲染器进程中向用户显示下载百分比,但找不到从主进程发送的正确语法 我目前的代码是: 主流程: ipcMain.on("downloadUpdate", (event, info) => { download(BrowserWindow.getFocusedWindow(), info.url, info.properties) .then(dl => event.sender.sen
ipcMain.on("downloadUpdate", (event, info) => {
download(BrowserWindow.getFocusedWindow(), info.url, info.properties)
.then(dl => event.sender.send("updateDownloadCompleted", dl.getSavePath()));
});
ipcRenderer.send("downloadUpdate", {
url: "https://testurl.co/test.zip",
properties: {
directory:"/temp/updates",
filename:"test.zip",
showBadge:false,
onProgress:function(){
console.log("hi");
},
}
});
渲染器进程:
ipcMain.on("downloadUpdate", (event, info) => {
download(BrowserWindow.getFocusedWindow(), info.url, info.properties)
.then(dl => event.sender.send("updateDownloadCompleted", dl.getSavePath()));
});
ipcRenderer.send("downloadUpdate", {
url: "https://testurl.co/test.zip",
properties: {
directory:"/temp/updates",
filename:"test.zip",
showBadge:false,
onProgress:function(){
console.log("hi");
},
}
});
我不知道如何将进度发送到渲染器进程
感谢您的帮助
编辑1:
我发现问题在于onProgress参数在主进程中没有作为函数读取。有人知道解决方法吗?如果您打印您的info.properties,我想它不会是onProgress属性 尝试这样的东西应该是有用的。从属性配置中删除onProgress并稍后添加
ipcMain.on("downloadUpdate", (event, info) => {
info.properties.onProgress = function() {
console.log('hi');
}
download(BrowserWindow.getFocusedWindow(), info.url, info.properties)
.then(dl => event.sender.send("updateDownloadCompleted", dl.getSavePath()));
});