electron 打開選擇文件框

electron中有dialog模塊,可以用來打來文件框,選擇文件夾或者文件。

兩種實現方式

1、可以通過ipc通信,main process,實現打開文件對話框的操作,然後把選擇的文件夾或者文件再次通過ipc通信發送的render 進程。

// in render.js

const {ipcRenderer} = require('electron');

function openDialog(){
    ipcRenderer.send('openDialog');
}

ipcRenderer.on('selectedItem', (event, files)=>{

    console.log(files);//輸出選擇的文件
})


//in main.js

const {ipcRenderer, dialog} = require('electron');

ipcRenderer.on('openDialog',(event)=>{
    dialog.showOpenDialog({
        
    }).then(result=>{
        console.log(result);        //輸出結果
        result.filePaths.length>0 && ipcRenderer.send(result.filePaths);
    })
})

2、直接在render進程中,使用remote模塊中的dialog模塊,打開。

const { remote } = require('electron');

async function openDialog(){
    const result = await remote.dialog.showOpenDialog({
        properties: ['openFile'],
    });
}

showOpenDialog的使用方式參考electron 文檔https://electronjs.org/docs/api/dialog#dialogshowopendialogbrowserwindow-options

發佈了52 篇原創文章 · 獲贊 6 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章