解决:如何让Element UI的Message消息提示每次只弹出一个

这就需要重新写一下element-ui的message

直接 main.js 中重写即可

import {
  Message
} from 'element-ui';

let messageInstance = null;
const overrideMessage = (options) => {
    if(messageInstance) {
        messageInstance.close()
    }
    // 这个是Message 距离窗口顶部的偏移量 不需要设置就不加
    options.offset = (document.documentElement.clientHeight || document.body.clientHeight)/2; 

    messageInstance = Message(options)
};
['error','success','info','warning'].forEach(type => {
    resetMessage[type] = options => {
        if(typeof options === 'string') {
            options = {
                message:options
            }
        }
        options.type = type
        return overrideMessage(options)
    }
})
Vue.use(ElementUI)
Vue.prototype.$message = overrideMessage;
PS:未来的你,一定会感谢今天拼命努力的自己!

你可能感兴趣的:(前端,Element,UI,Message,消息提示,只弹出一个,解决)