美文网首页前端
element-ui重置$message使弹窗只能出现一次

element-ui重置$message使弹窗只能出现一次

作者: 不染事非 | 来源:发表于2020-07-22 17:08 被阅读0次

    场景:操作过程中连续点击按钮弹出很多错误提示 或者函数执行多次产生很多错误提示弹窗不友好,修改为只弹出最后一次的提示;

    1、在util里新建一个resetMessage.js 文件
    /**重置message,防止重复点击重复弹出message弹框 */
    import { Message } from "element-ui";
    let messageInstance = null;
    let mainMessage = function DoneMessage(options) {
      //如果弹窗已存在先关闭
      if (messageInstance) {
        messageInstance.close();
      }
      messageInstance = Message(options);
    }
    let arr = ['success', 'warning', 'info', 'error'];
    arr.forEach(function (type) {
      mainMessage[type] = function (options) {
        if (typeof options === 'string') {
          options = {
            message: options
          };
        }
        options.type = type;
        return mainMessage(options);
      };
    });
    export const message = mainMessage;
    
    2.在main.js引用
    import { message } from './utils/message'
    Vue.use(ElementUI)
    Vue.prototype.$message = message;
    
    注意:挂载的话只能在vue.use(ElementUI)后面 ,否则无效

    相关文章

      网友评论

        本文标题:element-ui重置$message使弹窗只能出现一次

        本文链接:https://www.haomeiwen.com/subject/ghstlktx.html