如果你使用Electron作爲客戶端開發框架的話,那麼有可能會遇到打開本地目錄,並選中多個文件的需求。
如果遇到這樣的問題,改怎麼解決呢?
先來看張圖:
這就是運行效果, 具體的代碼如下:
// 導入對話框API模塊
const {
BrowserWindow,
app,
dialog
} = require('electron');
// 打開系統目錄
dialog.showOpenDialog(mainWindow, {
properties: ['openFile','multiSelections'],
// 支持文件格式篩選,同時也支持自定義格式
filters: [
{ name: 'Images', extensions: ['jpg', 'png', 'gif'] },
{ name: 'All Files', extensions: ['*'] }
]
}).then(result => {
// 打印選中狀態
console.log(result.canceled);
// 打印選中文件數組(絕對路徑)
console.log(result.filePaths);
// todo 其他操作
}).catch(err => {
// 捕獲異常
console.log(err);
})
代碼可以直接複製粘貼使用,本人已經在工程中實測。