gpt4 book ai didi

javascript - 如何使用Electron-dl

转载 作者:行者123 更新时间:2023-12-01 01:05:54 25 4
gpt4 key购买 nike

我正在尝试获取包裹electron-dl在职的。为此,我使用标准 electron-quick-start示例项目。

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

这就是我实现最小示例的方式:

ma​​in.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 { ipcRenderer } = require('electron')

$('#btn-dl').click(() => {
const newURL = "http://ipv4.download.thinkbroadband.com/5MB.zip"
ipcRenderer.send('download-item', {url: newURL})
})

ipcRenderer.on('download-success', (event, arg) => {
console.log(arg)
})

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>

在此实现中,我只是尝试在按下“下载”按钮时下载文件 5MB.zip

我做错了什么?

有人可以提供一个使用 electro-quick-start 示例来实现 electro-dl 的简单工作示例吗?

感谢您的帮助!

最佳答案

完全按照您的描述重新创建后,它对我来说完美无缺。

控制台输出如下:

http://ipv4.download.thinkbroadband.com/5MB.zip
DownloadItem {
_events: { updated: [Function], done: [Function] },
_eventsCount: 2 }

封装决定了location to store the file本身,如果您不指定它。您可以使用 app.getPath('downloads') 输出默认选择的路径。对我来说,这是我的主目录 (Linux)。

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

download(win, url, {
directory: "/path/to/my/directory/"
})

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

关于javascript - 如何使用Electron-dl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55650277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com