我想从渲染的脚本中显示一个打开对话框。
我从不同的来源获得冲突的信息,但据我所知,https://electronjs.org/docs/api/dialog的文档建议我应该可以使用:
const dialog = require('electron').remote.dialog;
dialog.showOpenDialog({ title: '…', defaultPath: '…' })
.then(data=>console.log(data));
我收到的错误消息是:
TypeError: dialog.showOpenDialog(...).then is not a function
这表明dialog.showOpenDialog()
并未根据文档返回承诺。该文档中的示例也不适合我。
我知道我可以使用dialog.showOpenDialog(options,callback)
,并且已经成功使用了,但是为什么我不能使用.then()
?
我还注意到,如果我包含可选的BrowserWindow
参数,它将挂起,因此问题可能更广泛。