重置message 防止重复点击重复弹出message弹框
// message.js
import { Message } from 'element-ui' //引入message弹出框
const showMessage = Symbol('showMessage')
class DonMessage {
success (options, single = true) {
this[showMessage]('success', options, single)
}
warning (options, single = true) {
this[showMessage]('warning', options, single)
}
info (options, single = true) {
this[showMessage]('info', options, single)
}
error (options, single = true) {
this[showMessage]('error', options, single)
}
[showMessage] (type, options, single) {
if (single) {
// 判断是否已存在Message
if (document.getElementsByClassName('el-message').length === 0) {
Message[type](options)
}
} else {
Message[type](options)
}
}
}
const message = new DonMessage()
export default message
在main.js引入js
import DonMessage from '@/utils/resetMessage.js';
Vue.prototype.$message = DonMessage;