A vue.js component for creating modals. Create modals and fill them with whatever components or HTML you want.
Vue modal is built as a vue plugin. It can be initialized just as the Vue documentation states.
import VueModal from "vue2-modal";
Vue.use(VueModal);Vue modals are all accessed and run through the name that is given to a modal.
A modal can be created by giving it a name and a function to run when it's closed.
Modals also contain a slot for the title section. Here is a very simple modal.
<vue-modal :on-close="closeModal" name="my-modal">
<h2 slot="header">Hello World</h2>
<p>This modal will do stuff.</p>
</vue-modal>Vue modals contains a very simple API for interacting with modals.
- Show Modal:
this.$modals.show("my-modal") - Manually close modal:
this.$modals.hide("my-modal") - Check if a modal showing:
this.$modals.isActive("my-modal")
There are some built in stylings that can be changed or a manual theme can also be applied. There are three props which are used to change the size of the modals themselves.
- size (xsm, sm, md, lg, xlg)
- width
- height
To apply custom themes simply create a string of standard css and pass it into the theme prop.
There are life cycle hooks that can be utilized to run actions at different points in the modals life.
- onClose: Runs right before the close modal event is emitted
- onShow: Runs after the modal have been rerendered to the screen.
| Prop | Description | Value |
|---|---|---|
| name | The name of the modal. Used to show and hide modal. | String |
| size | The size of the modal | xsm, sm, md, lg, xlg |
| width | A fixed width for the modal | Number |
| height | A fixed height for the modal | Number |
| hideCloseBtn | Hides close button | Boolean |
| theme | Css styles to be applied directly | String |
| transitionName | The style of transition | zoom-in, zoom-out, fade, slide-in-top |
| onClose | A function that runs when a modal closes | Function |
| onShow | A function that runs when a modal is shown | Function |
| outerClose | Disables closing a modal by clicking outside of it | Boolean |
This project is covered under the MIT License. Feel free to use it wherever you like.