踩坑分析
之前版本使用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) }) }
問題解決,踩坑完畢。
到此這篇關于electron踩坑之dialog中的callback解決的文章就介紹到這了,更多相關electron dialog callback內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://segmentfault.com/a/1190000027079359