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])
browserWindow
BrowserWindowoptions
Objecttitle
StringdefaultPath
Stringfilters
Arrayproperties
Array - Contains which features the dialog should use, can containopenFile
,openDirectory
,multiSelections
andcreateDirectory
callback
Function
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])
browserWindow
BrowserWindowoptions
Objecttitle
StringdefaultPath
Stringfilters
Array
callback
Function
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])
browserWindow
BrowserWindowoptions
Objecttype
String - Can be"none"
,"info"
or"warning"
buttons
Array - Array of texts for buttonstitle
String - Title of the message box, some platforms will not show itmessage
String - Content of the message boxdetail
String - Extra information of the message
callback
Function
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)