Javascript 如何使用electron dl

Javascript 如何使用electron dl,javascript,electron,Javascript,Electron,我正在努力使这个包裹运转起来。为此,我使用标准示例项目 不幸的是,将electron dl中的示例代码应用于electron quick start示例对我来说不起作用,这意味着什么都没有发生,浏览器控制台或终端中也没有错误 下面是我如何实现最小示例的: main.js const {app, BrowserWindow, ipcMain} = require('electron') const {download} = require('electron-dl'); let mainWind

我正在努力使这个包裹运转起来。为此,我使用标准示例项目

不幸的是,将electron dl中的示例代码应用于electron quick start示例对我来说不起作用,这意味着什么都没有发生,浏览器控制台或终端中也没有错误

下面是我如何实现最小示例的:

main.js

const {app, BrowserWindow, ipcMain} = require('electron')
const {download} = require('electron-dl');

let mainWindow

ipcMain.on('download-item', async (event, {url}) => {
  event.sender.send('download-success', url)
  console.log(url)
  const win = BrowserWindow.getFocusedWindow();
  console.log(await download(win, url));
});
// ...
renderer.js

const {app, BrowserWindow, ipcMain} = require('electron')
const {download} = require('electron-dl');

let mainWindow

ipcMain.on('download-item', async (event, {url}) => {
  event.sender.send('download-success', url)
  console.log(url)
  const win = BrowserWindow.getFocusedWindow();
  console.log(await download(win, url));
});
// ...
index.html

<h1>Hello World!</h1>
<button id="btn-dl">Download</button>

<script>
// jQuery
$ = require('jquery')
// You can also require other files to run in this process
require('./renderer.js')
</script>
你好,世界!
下载
//jQuery
$=require('jquery')
//您还可以要求在此过程中运行其他文件
需要(“./renderer.js”)
在这个实现中,我只是在按下下载按钮时尝试下载文件
5MB.zip

我做错了什么

有人能用electron quick start示例提供一个简单的实施electron dl的工作示例吗


谢谢你的帮助

完全按照您描述的内容重新创建,它对我来说完美无瑕

以下是控制台上的输出:

http://ipv4.download.thinkbroadband.com/5MB.zip
下载项目{
_事件:{已更新:[Function],已完成:[Function]},
_eventsCount:2}
如果未指定,则包将确定其自身。您可以使用
app.getPath('downloads')
输出它默认选择的路径。对我来说,这是我的主目录(Linux)

如果您想自己设置下载目录:

下载(win、url、{
目录:“/path/to/my/directory/”
})

该软件包将根据需要创建目录。

完全重新创建了您所描述的内容,它对我来说完美无瑕

以下是控制台上的输出:

http://ipv4.download.thinkbroadband.com/5MB.zip
下载项目{
_事件:{已更新:[Function],已完成:[Function]},
_eventsCount:2}
如果未指定,则包将确定其自身。您可以使用
app.getPath('downloads')
输出它默认选择的路径。对我来说,这是我的主目录(Linux)

如果您想自己设置下载目录:

下载(win、url、{
目录:“/path/to/my/directory/”
})

该包将根据需要创建目录。

是否在main.js中记录下载url?否,
console.log(url)
未显示任何内容其控件将转到
btn dl
click handler?是否在main.js中记录下载url?否,
console.log(url)
没有显示任何东西它的控件将转到
btn dl
单击处理程序?这太疯狂了,我重新启动了计算机,它工作了。我想一定是重新加载功能出了问题。这太疯狂了,我重新启动了电脑,它正常工作了。我猜重载功能一定出了问题。