A simple and lightweight Vue modal component for Vue 2.x.
Docs: https://initbase.github.io/vue-modal-2/
yarn add @burhanahmeed/vue-modal-2
or
npm install @burhanahmeed/vue-modal-2
Vue-modal-2 usage for Vue 2.x
import Vue from "vue";
import App from "./App.vue";
import Modal from "@burhanahmeed/vue-modal-2";
Vue.use(Modal);
Vue.config.productionTip = false;
new Vue({
render: (h) => h(App)
}).$mount("#app");
Usage in vue. If you didn't specify options.componentName
, by default it will be <vue-modal-2></vue-modal-2>
<template>
<vue-modal-2 name="modal-1" @on-close="close">
Hello From Inside Modal Component
</vue-modal-2>
</template>
API usage
methods: {
open () {
this.$vm2.open('modal-1')
},
close () {
this.$vm2.close('modal-1')
}
}
vue-modal-2 also accept options in .use()
function as second argument.
options.componentName
String
vue-modal-2
Vue.use(Modal. {
componentName: 'MyModal'
});
<template>
<my-modal name="modal-1" @on-close="close">
Hello From Inside Modal Component
</my-modal>
</template>
vue-modal-2 accept some props
name
unique name of the modal (required).
String
true
modal-1
@on-close
or v-bind:on-close
props function using to close the modal (required).
function
true
see example above.
headerOptions
options props for vue-modal-2 header
Object
{}
headerOptions key:
key | type | default | desc |
---|---|---|---|
headerOptions.title |
String |
Modal title | Modal title on the left side |
headerOptions.closeIcon |
String |
✕ |
Close button icon on the right side |
footerOptions
options props for vue-modal-2 footer
Object
{}
footerOptions key:
key | type | default | desc |
---|---|---|---|
footerOptions.justify |
String |
flex-end |
determine button position on the left or right |
footerOptions.btn1 |
String |
Button 1 |
button one text. Button 1 is the one on the left side. |
footerOptions.btn2 |
String |
Button 2 |
button two text. Button 2 is the one on the right side. |
footerOptions.btn2 |
String |
Button 2 |
button two text. Button 2 is the one on the right side. |
footerOptions.disableBtn2 |
Boolean |
false |
button 2 (right side) can be disabled. |
footerOptions.btn1OnClick |
Function |
() => {} |
action when button 1 is clicked. |
footerOptions.btn2OnClick |
Function |
() => {} |
action when button 2 is clicked. |
footerOptions.btn1Style |
Object |
{} |
style or css of button 1. eg. {fontSize: '14px'} |
footerOptions.btn2Style |
Object |
{} |
style or css of button 2. eg. {fontSize: '14px'} |
noFooter
used to remove footer
Boolean
false
noHeader
Used to remove header
Boolean
false
wrapperBg
Background color of modal wrapper (backdrop) (default is dark)
String
rgba(0, 0, 0, 0.5)
darkMode
Used to switch color mode
Boolean
false
lightBg
background color of modal dialog when mode is light
String
white
darkBg
background color of modal dialog when mode is dark
String
#06090f
fontDark
text color of modal when mode is dark
String
white
fontLight
text color of modal when mode is light
String
black
modalSize
size of modal dialog
String
md
| lg
| xl
| full-w
| full-hw
| sidebar-l
| sidebar-r
open(args)
accept modal name as args
close(args)
accept modal name as args
Feel free to open an issue or pull request. Open an issue if you want discussing something.
modalSize
options -> [sidebar-r
, sidebar-l
]modalSize
with value [md
, lg
, xl
, full-w
, full-hw
]MIT © burhanahmeed and Initbase