vue-msg
Version:
this is vue msg
36 lines (30 loc) • 896 B
JavaScript
import MsgComponent from './vue-msg.vue'
let Msg = {}
Msg.config = {
timeout: 3000
}
Msg.install = (Vue, options) => {
Vue.prototype.$msg = (message, option) => {
let _option = option || {}
for (let key in Msg.config) {
if (!_option[key]) {
_option[key] = Msg.config[key]
}
}
const MsgController = Vue.extend(MsgComponent)
let instance = new MsgController().$mount(document.createElement('div'))
instance.message = message
instance.is = true
document.body.appendChild(instance.$el)
setTimeout(() => {
instance.is = false
setTimeout(() => {
document.body.removeChild(instance.$el)
}, 500)
}, _option.timeout)
}
}
if (window.Vue) {
Vue.use(Msg)
}
export default Msg