Solution to the problem of repeated pop-up of Element's Message pop-up window

Solution to the problem of repeated pop-up of Element's Message pop-up window

1. Use

Using element's message component in Vue

Use in Vue file

this.$message({
  message: "prompt message",
  type: "success"
})

Use in js file

import ElementUI from 'element-ui';

ElementUI.Message({
  message: 'prompt message',
  type: 'warning'
});

2. Solve the problem of repeated display of message pop-up windows

// message.js
/**
 * @Description: Override message mounting to implement private properties of Class* @param { String } options => message content* @param { Boolean } single => whether to display only one*/
import { Message } from 'element-ui';

const showMessage = Symbol('showMessage');

class DonMessage {
  success (options, single = false) {
    this[showMessage]('success', options, single);
  }
  warning (options, single = false) {
    this[showMessage]('warning', options, single);
  }
  info (options, single = false) {
    this[showMessage]('info', options, single);
  }
  error (options, single = true) {
    this[showMessage]('error', options, single);
  }

  [showMessage] (type, options, single) {
    if (single) {
      // Determine if Message already exists
      if (document.getElementsByClassName('el-message--error').length === 0) {
        Message[type](options);
      }
    } else {
      Message[type](options);
    }
  }
}

// Default export of private Message component export default new DonMessage();

Introduce where necessary

import DonMessage from '@/message' 

Use directly in js file

DonMessage.warning('Please log in') 

Mounted on the vue prototype

// main.js 
Vue.prototype.$message = DonMessage 
// Call this.$message.warning("Please log in") in the vue file

This is the end of this article about how to solve the problem of repeated pop-up of Element’s Message pop-up. For more information about repeated pop-up of Element’s Message pop-up, please search for previous articles on 123WORDPRESS.COM or continue to browse the related articles below. I hope you will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • Vue implements table pop-up component based on Element-ui
  • The whole process of implementing the summary pop-up window with Vue+Element UI
  • Steps for encapsulating element-ui pop-up components
  • Implementation of vue+elementui universal pop-up window (add+edit)
  • Solution to the failure of closing the dialog pop-up window in element-ui
  • Detailed explanation of the problem between pop-up windows using element ui and echarts in vue
  • Element modifies the implementation of the level of pop-up window components

<<:  MySQL encoding utf8 and utf8mb4 utf8mb4_unicode_ci and utf8mb4_general_ci

>>:  How to install and connect Navicat in MySQL 8.0.20 and what to pay attention to

Recommend

Detailed explanation of the difference between docker-compose ports and expose

There are two ways to expose container ports in d...

Ubuntu 18.04 installs mysql 5.7.23

I installed MySQL smoothly in Ubuntu 16.04 before...

Summary of common tool functions necessary for front-end development

1. Time formatting and other methods It is recomm...

Detailed explanation of as, question mark and exclamation mark in Typescript

1. The as keyword indicates an assertion In Types...

Solution to Linux CentOS 6.5 ifconfig cannot query IP

Recently, some friends said that after installing...

JavaScript to implement click to switch verification code and verification

This article shares the specific code of JavaScri...

How to enable slow query log in MySQL

1.1 Introduction By enabling the slow query log, ...

New usage of watch and watchEffect in Vue 3

Table of contents 1. New usage of watch 1.1. Watc...

Vue implements form validation function

This article mainly describes how to implement fo...

Is it necessary to give alt attribute to img image tag?

Do you add an alt attribute to the img image tag? ...

Summary of the use of vue Watch and Computed

Table of contents 01. Listener watch (1) Function...

CSS3 mobile vw+rem method to achieve responsive layout without relying on JS

1. Introduction (1) Introduction to vw/vh Before ...

Detailed introduction of Chrome developer tools-timeline

1. Overview Users expect the web applications the...

Linux Network System Introduction

Table of contents Network Information Modify the ...