共计 643 个字符,预计需要花费 2 分钟才能阅读完成。
踩坑剖析
之前版本应用 dialog 时抉择文件时,能够退出 callback,来获取被抉择文件的门路,而 electron10 更新后产生了改变,采纳了 Promise 对象来获取后果。
electron 10 之前咱们获取文件门路,只需退出 callback 即可,也就是下述写法,且之前返回的 data 后果间接是文件的门路。
openDialogDom.onclick = function(){
remote.dialog.showOpenDialog({properties:['openFile']
},function(data){console.log(data)
})
}
解决
electron10 之后,写我的项目时我发现 callback 有效,在之前的踩坑经验来说,我感觉又是因为版本更新所带来的后果,查看官网文档,又带给了我踩坑完结的播种。
能够看出在该办法的返回值变为了 Promise 对象,且在 Promise 对象中减少了 cancele,filePaths,bookmarks 属性,此时咱们要想获取被选中的文件的门路,也须要与原先未更新版本前有着不一样的扭转,也就是如下写法。
openDialogDom.onclick = function(){
remote.dialog.showOpenDialog({properties:['openFile']
}).then(res => {console.log(res.canceled)
console.log(res.filePaths)
})
}
问题解决,踩坑结束。
正文完