I am working on an electron app that can open a directory file picker and return a value, like how this question does it: Electron - Open Folder Dialog
ipcMain.on('selectDirectory', function() {
dir = dialog.showOpenDialog(mainWindow, {
properties: ['openDirectory']
});
});
But I cannot find a way to open the folder dialog without returning anything, like if I as a user want to open the location of a file. I don't want to lock my program by waiting for a selected file/folder. I just want a window to a specific location to open on a user's machine through my cross-platform electron app (mac/win/linux)
Electron's dialog.showOpenDialog()
returns a promise, so it would need to be handled as such.
ipcMain.on('selectDirectory', function() {
// Define the options.
let options = {
title: "My title",
properties: ['openDirectory'],
defaultPath: "/absolute/path/to/open/at" // Optional.
}
// Show the open (folder) dialog.
dialog.showOpenDialog(mainWindow, options)
.then((result) => {
// Bail early if user cancelled dialog.
if (result.canceled) { return }
// Get the selected path.
let path = result.filePaths[0];
// More processing...
})
});
If you wish to set the inital path the dialog opens at then set the defaultPath
property.
The path
variable will give you the path the user selected in the dialog.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.