以前版本使用dialog时选择文件时,能够加入callback,来获取被选择文件的路径,而electron10更新后发生了改动,采用了Promise对象来获取结果。
electron 10以前咱们获取文件路径,只需加入callback便可,也就是下述写法,且以前返回的data结果直接是文件的路径。javascript
openDialogDom.onclick = function(){ remote.dialog.showOpenDialog({ properties:['openFile'] },function(data){ console.log(data) }) }
electron10以后,写项目时我发现callback无效,在以前的踩坑经从来说,我以为又是由于版本更新所带来的结果,查看官方文档,又带给了我踩坑结束的收获。
能够看出在该方法的返回值变为了Promise对象,且在Promise对象中增长了cancele,filePaths,bookmarks属性,此时咱们要想获取被选中的文件的路径,也须要与原先未更新版本前有着不同的改变,也就是以下写法。java
openDialogDom.onclick = function(){ remote.dialog.showOpenDialog({ properties:['openFile'] }).then(res => { console.log(res.canceled) console.log(res.filePaths) }) }
问题解决,踩坑完毕。electron