2.9 KiB
dialog
The dialog module provides APIs to show native system dialogs, so web
applications can get the same user experience with native applications.
An example of showing a dialog to select multiple files and directories:
var win = ...; // window in which to show the dialog
var dialog = require('dialog');
console.log(dialog.showOpenDialog({ properties: [ 'openFile', 'openDirectory', 'multiSelections' ]}));
Note for OS X: If you want to present dialogs as sheets, the only thing you have to do is to provide a BrowserWindow reference in the browserWindow parameter.
dialog.showOpenDialog([browserWindow], [options], [callback])
browserWindowBrowserWindowoptionsObjecttitleStringdefaultPathStringfiltersArraypropertiesArray - Contains which features the dialog should use, can containopenFile,openDirectory,multiSelectionsandcreateDirectory
callbackFunction
On success, returns an array of file paths chosen by the user, otherwise
returns undefined.
The filters specifies an array of file types that can be displayed or
selected, an example is:
{
filters: [
{ name: 'Images', extensions: ['jpg', 'png', 'gif'] },
{ name: 'Movies', extensions: ['mkv', 'avi', 'mp4'] },
{ name: 'Custom File Type', extensions: ['as'] },
],
}
If a callback is passed, the API call would be asynchronous and the result
would be passed via callback(filenames)
Note: On Windows and Linux, an open dialog could not be both file selector
and directory selector at the same time, so if you set properties to
['openFile', 'openDirectory'] on these platforms, a directory selector would
be showed.
dialog.showSaveDialog([browserWindow], [options], [callback])
browserWindowBrowserWindowoptionsObjecttitleStringdefaultPathStringfiltersArray
callbackFunction
On success, returns the path of file chosen by the user, otherwise returns
undefined.
The filters specifies an array of file types that can be displayed, see
dialog.showOpenDialog for an example.
If a callback is passed, the API call would be asynchronous and the result
would be passed via callback(filename)
dialog.showMessageBox([browserWindow], [options], [callback])
browserWindowBrowserWindowoptionsObjecttypeString - Can be"none","info"or"warning"buttonsArray - Array of texts for buttonstitleString - Title of the message box, some platforms will not show itmessageString - Content of the message boxdetailString - Extra information of the message
callbackFunction
Shows a message box, it will block until the message box is closed. It returns the index of the clicked button.
If a callback is passed, the API call would be asynchronous and the result
would be passed via callback(response)