<ons-dialog />

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.

Tutorial

Dialogs

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>

Notification methods

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.
  });

See also

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([options]): Promise

Show the dialog.

Returns:

Parameters
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([options]): Promise

Hide the dialog.

Returns: Resolves to the hidden element

Parameters
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.
preshow

Fired just before the dialog is displayed.

Parameters
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.
postshow

Fired just after the dialog is displayed.

Parameters
Name Type Description
event Object Event object.
event.dialog Object Component object.
prehide

Fired just before the dialog is hidden.

Parameters
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.
posthide

Fired just after the dialog is hidden.

Parameters
Name Type Description
event Object Event object.
event.dialog Object Component object.
dialogcancel

Fired when the dialog is canceled.

Parameters
Name Type Description

Need Help?

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.