Dialog that is displayed on top of current screen. As opposed to the <ons-alert-dialog>
element, this component can contain any kind of content.
To use the element it can either be attached directly to the <body>
element or dynamically created from a template using the ons.createDialog(template)
utility function and the <template>
tag.
The dialog is useful for displaying menus, additional information or to ask the user to make a decision.
It will automatically be displayed as Material Design when running on an Android device.
There are three components used to show dialogs: Dialog
, AlertDialog
and Toast
. The Dialog
component is a general dialog where you can put any content. AlertDialog
has some default styles that make it easy to show errors, warnings or questions to the user.
And Toast
is a message (with optional button) that does not stop the app flow.
To show or hide the dialog the isOpen
prop is used.
<Dialog isOpen={this.state.dialogShown}>
Hi!
<Button onClick={this.hideDialog.bind(this)}>
Close
</Button>
</Dialog>
The ons.notification
object contains some useful methods to easily show alerts, confirmation dialogs and prompts:
ons.notification.alert(message, options)
ons.notificaiton.confirm(message, options)
ons.notification.prompt(message, options)
ons.notification.toast(message, options)
They all return a Promise
object that can be used to handle the input from the user.
ons.notification.confirm('Are you ready?')
.then((response) => {
// Handle response.
});
Name | Type | Description |
---|---|---|
modifier | String | The appearance of the dialog. Optional. |
cancelable | If this attribute is set the dialog can be closed by tapping the background or by pressing the back button on Android devices. Optional. | |
disabled | If this attribute is set the dialog is disabled. Optional. | |
animation |
String
default |
The animation used when showing and hiding the dialog. Can be either "none" or "default" .
Optional.
|
animation-options | Expression |
Specify the animation’s duration, timing and delay with an object literal. E.g. {duration: 0.2, delay: 1, timing: 'ease-in'} .
Optional.
|
mask-color |
String
rgba(0, 0, 0, 0.2) |
Color of the background mask. Default is "rgba(0, 0, 0, 0.2)" .
Optional.
|
visible | Boolean | Whether the dialog is visible or not. Optional. |
Name | Description |
---|---|
animationOptions |
Specify the animation’s duration, timing and delay with an object literal. E.g. {duration: 0.2, delay: 1, timing: 'ease-in'} .
|
onDeviceBackButton | Back-button handler. |
visible | Whether the dialog is visible or not. |
disabled | Whether the dialog is disabled or not. |
cancelable | Whether the dialog is cancelable or not. A cancelable dialog can be closed by tapping the background or by pressing the back button on Android devices. |
maskColor | Color of the background mask. Default is “rgba(0, 0, 0, 0.2)”. |
Name | Description |
---|---|
material | Display a Material Design dialog. |
Signature | Description |
---|---|
show([options]) | Show the dialog. |
hide([options]) | Hide the dialog. |
Show the dialog.
Returns:
Name | Type | Description |
---|---|---|
options | Object | Parameter object. |
options.animation | String |
Animation name. Available animations are "none" and "slide" .
|
options.animationOptions | String |
Specify the animation’s duration, delay and timing. E.g. {duration: 0.2, delay: 0.4, timing: 'ease-in'} .
|
options.callback | Function | This function is called after the dialog has been revealed. |
Hide the dialog.
Returns: Resolves to the hidden element
Name | Type | Description |
---|---|---|
options | Object | Parameter object. |
options.animation | String |
Animation name. Available animations are "none" and "slide" .
|
options.animationOptions | String |
Specify the animation’s duration, delay and timing. E.g. {duration: 0.2, delay: 0.4, timing: 'ease-in'} .
|
options.callback | Function | This functions is called after the dialog has been hidden. |
Name | Description |
---|---|
preshow | Fired just before the dialog is displayed. |
postshow | Fired just after the dialog is displayed. |
prehide | Fired just before the dialog is hidden. |
posthide | Fired just after the dialog is hidden. |
dialogcancel | Fired when the dialog is canceled. |
Fired just before the dialog is displayed.
Name | Type | Description |
---|---|---|
event | Object | Event object. |
event.dialog | Object | Component object. |
event.cancel | Function | Execute this function to stop the dialog from being shown. |
Fired just after the dialog is displayed.
Name | Type | Description |
---|---|---|
event | Object | Event object. |
event.dialog | Object | Component object. |
Fired just before the dialog is hidden.
Name | Type | Description |
---|---|---|
event | Object | Event object. |
event.dialog | Object | Component object. |
event.cancel | Function | Execute this function to stop the dialog from being hidden. |
Fired just after the dialog is hidden.
Name | Type | Description |
---|---|---|
event | Object | Event object. |
event.dialog | Object | Component object. |
Fired when the dialog is canceled.
Name | Type | Description |
---|
If you have any questions, use our Community Forum or talk to us on Discord chat. The Onsen UI team and your peers in the community will work together to help solve your issues.
For bug reports and feature requests use our GitHub Issues page.