vuedialog v1.0.0
VueDialog
Dialog windows for Vue 2.x (like confirm or alert), based on Vuedals.
These dialogs will return a Promise when called that will resolve when confirmed and rejects when denied
It provides 3 types of dialogs:
- Alert
- Confirm
- Hard Confirm
More info about the types, below
DEMO
Live demo on jsFiddle: https://jsfiddle.net/041r81r0/
Example
import VueDialog from 'vuedialog';
import { Bus, Component as Vuedals } from 'vuedals';
VueDialog.setBus(Bus);
var vm = new Vue({
el: '#app',
components: {
VueDialog,
Vuedals
},
methods: {
continue() {
VueDialog.confirm('Are you sure of this?')
.then(_ => alert('You are sure'))
.catch(_ => alert('Phew..'));
}
},
template: `<div>
To continue, <span @click="continue()">click here</span>
<vuedals></vuedals>
</div>`
});
Dependencies
This plugin depends on Vuedals
so you need to have Vuedals as a component dependency if you don't:
$ npm install vuedals --save
import { Component as Vuedals } from 'vuedals';
Vue.component('my-component', {
components: {
Vuedals
},
template: `
<div>
<vuedals></vuedals>
</div>
`
});
For more info on how to setup Vuedals, check the repo: https://github.com/javisperez/vuedals/
Install
Be sure that you have Vuedals install, as is a dependency
Install with npm:
$ npm install vuedialog --save
After that you need to pass the Vuedal's Event Bus instance to trigger the open and close methods, example:
import { Bus } from 'vuedals';
import VueDialog from 'vue-dialog';
VueDialog.setBus(Bus);
Usage
import { VueDialog } from 'vuedialog';
Vue.component('my-component', {
methods: {
myMethod() {
VueDialog.alert('Watch me!', 'Ok, done!');
}
}
});
Dialog types
This plugin has 3 methods you can call:
alert
VueDialog.alert(message[, buttonLabel])
Will open an alert window with the given message.
arguments
Argument | Type | Default | Description |
---|---|---|---|
message | String | "" | The mesage to show |
buttonLabel | String | "Ok" | The label of the button |
confirm
VueDialog.confirm(message[, options])
Will open a confirm window with the message and the given options.
arguments
Argument | Type | Default | Description |
---|---|---|---|
message | String | "Are you sure?" | The mesage to show |
options | Object | see below | Options for this confirm |
options
Option | Type | Default | Description |
---|---|---|---|
title | String | "Please confirm" | The title of the window |
labels | Object | {ok: "Ok", cancel: "Cancel"} | The labels of the \<ok> and \<cancel> buttons |
payload | Object | {} | The payload that can be usefull for determing/identifying vuedals instances |
template | String | "just contains the options title" | The tempalte that can be passed to show the content |
hardConfirm
VueDialog.hardConfirm(message[, confirmationMessage[, options]])
Opens a "hard confirm" window dialog, this is a confirm in which the user has to type a given confirmation message and press the "im sure" button for a given amount of seconds. This is intended for really sensitive actions.
arguments
Argument | Type | Default | Description |
---|---|---|---|
message | String | "Are you sure?" | The mesage to show |
confirmationMessage | String | "I really want to do it" | The message the user will need to type |
options | Object | see below | The custom options |
payload | Object | {} | The payload that can be usefull for determing/identifying vuedals instances |
template | String | "just contains the options title" | The tempalte that can be passed to show the content |
options
Option | Type | Default | Description |
---|---|---|---|
duration | Integer | 5 | How many seconds the user will need to press the confirmation button |
labels | Object | {ok: "Yes, i'm sure", cancel: "Cancel", pressing: "Keep pressing...", confirmed: "Confirmed, please wait..."} | The labels of the \<ok> and \<cancel> buttons, and \<pressing>, \<confirmed> states for the \<ok> button |
8 years ago