vue element plus 消息弹窗一次只弹出一次

667 阅读1分钟

vue element plus 消息弹窗一次只弹出一次

效果图:

image.png

image.png

解决方案

element plus 全局配置文档

image.png

当我们只需要消息只出现一次 的时候, 我找了 半天发现网上有几种方案:

  1. 根据dom去限制的
  2. 封装message 消息组件控制

但是这些在原则上都需要去增加额外的一个控制方式, 后面我根据文档查询 发现element 本身就有这种控制。 我原来的方案是:

  1. 继承和重写MessageFn,后面发现行不通 , 因为我水平问题 , 我是半吊子前端, 因为 我是干后端的
  2. 后面发现官方原本就有配置
  3. 防抖 , 因为需要改动原有的提示, 所以就把防抖解决方案给否定了

官方配置方式有两种

  1. 一种是app.use的时候传入参数
  2. 一种是利用el-config-provider组件来进行配置

app.use

app.use(ElementPlus, {size: 'small', zIndex: 3000, locale: zhCn, message:{max:1}})

el-config-provider

<el-config-provider :message="{max: 1,}">
  <router-view></router-view>
</el-config-provider>

后面发现app.use 这种没有效果 不知道 为啥 ,所以我就采用了 第二种 config配置组件 。