elementUI的message消息提示改成只能同时存在一个

  1. 封装单例message:
    import {
      Message
    } from 'element-ui'
    
    let messageInstance = null
    
    const resetMessage = (options) => {
      if (messageInstance) {
        messageInstance.close()
      }
      messageInstance = Message(options)
      return messageInstance
    }
    
    ['error', 'success', 'info', 'warning'].forEach(type => {
      resetMessage[type] = options => {
        if (typeof options == 'string') {
          options = {
            message: options
          }
        }
        options.type = type
        return resetMessage(options)
      }
    })
    
    export const message = resetMessage
  2. 在main.js中挂载ElementUI之后把封装的消息提示message挂载到Vue原型上:
    import 引入 message
    
    //
    Vue.use(ElementUI)
    
    // 后:覆盖前面挂载的$message
    Vue.prototype.$message = message

     

posted @ 2020-09-30 15:50  _JZYU  阅读(1803)  评论(0编辑  收藏  举报