首页 > 其他分享 >notification ant插件 封装notification 防止多个相同的错误提示同时展示 message也一样

notification ant插件 封装notification 防止多个相同的错误提示同时展示 message也一样

时间:2024-08-26 10:15:32浏览次数:11  
标签:content 插件 notification ant clearTimer message showMessage type

import { notification } from 'ant-design-vue'

type NoticeType = 'info' | 'success' | 'error' | 'warning'

// 保证 notification提示不重复

const messageSet = new Set();
let clearTimer: number | undefined;

interface MessageOptions {
    content: string
}
/**
* 封装message 防止多个相同的错误提示同时展示
* @param type message类型
* @param content 文本内容或message 配置 
*/

export function showMessage(type: NoticeType, content: string): MessageType;
export function showMessage(
    type: NoticeType,
    options: MessageOptions,
): MessageType;

export function showMessage(type: NoticeType, content: string) {
    const msg = typeof content === 'string' ? content : content.description || '';
    if (messageSet.has(msg)) {
        return;
    }
    messageSet.add(msg);

    if (clearTimer) {
        window.clearTimeout(clearTimer);
    }

    clearTimer = window.setTimeout(() => {
        messageSet.clear();
        clearTimer = undefined;
    }, 5 * 1000)

    return notification[type](content)
}

使用页面引入即可.

import { showMessage } from '../util/notification.ts' 
showMessage('error',{
        placement: 'top',
        message: '提示',
        description: "请输入正确的用户名",
        top: '40%'
}) 

 

标签:content,插件,notification,ant,clearTimer,message,showMessage,type
From: https://www.cnblogs.com/FuGui-Wang/p/18380159

相关文章

  • AI人像换脸!Reactor插件本地部署方法(含报错解决及整合包)
    ​Reactor插件是什么?有什么用?Reactor是一个用于StableDiffusion的换脸插件,主要功能是实现图片中的精确换脸。它可以自动检测并替换图片中的多个面部,适用于多种场景,比如生成逼真的图像或者进行复杂的图片处理。通过Reactor,用户可以更轻松地实现高质量的换脸效果,提......
  • Hitachi Vantara Programming Contest 2024(AtCoder Beginner Contest 368)题解A~D
    A-Cut题意:将数组的后k个字符移到前面思路:可以用rotate()函数让数组中的元素滚动旋转rotate(v.begin(),v.begin()+n-k,v.end());直接输出后k个元素,再输出前n-k个元素for(inti=n-k;i<n;i++)write(v[i]);for(inti=0;i<n-k;i++)write(v[i]);B-Decrease2......
  • ZBlog插件开发文件结构(插件)
    以下基于通过「创建应用」生成的初始文件:/path/zb_users/plugin/demoPlugin│logo.png[必需]图标,128x128;│plugin.xml[必需]自述文件;│main.php[可选]应用内置管理页,在创建插件时填写才会生成;│include.php[可选]应用嵌入页,在创建插件时填写......
  • Hitachi Vantara Programming Contest 2024(AtCoder Beginner Contest 368)- C
    题意概述有\(N\)个数,分别为\(H_1,H_2,H_3……H_N\)。你将使用初始化为\(0\)的变量\(T\)重复以下操作,直到所有数的值都变为\(0\)或更少。将\(T\)增加\(1\)。然后,减少最前方\(H_i\)值大于等于\(1\)的值。如果\(T\)是\(3\)的倍数,\(H_i\)的值会减少\(3\);......
  • E - Count Descendants
    他问题本质是问u子树内绝对深度为d的节点个数。它是时间戳手法的一个拓展或者细化。在时间戳数组上。有个性质:......
  • Chain Contestant 题解
    前言题目链接:洛谷;AtCoder。最慢的点才跑\(2\)ms的题解确定不看一看?题意简述给定长度为\(n\)的字符串\(s\),其中\(s_i\in\Omega\),求有多少子序列\(T\)满足任意\(x\in\Omega\),其在\(T\)出现的位置为连续一段,当然,对\(998244353\)取模。\(n\leq10^5\),\(|\Omeg......
  • maven Tomcat插件安装 运行web项目 (3)
    1.maven工程目录结构main是用来写我们程序test是用来测试java是源程序resource是配置maven项目构建命令2.配置maven创建Maven工程这里的项目名称可以随便取进来后改成自己想要的jdk......
  • Ant-Design-Vue快速上手指南+排坑
    AntDesignVue是一个基于AntDesign设计理念的Vue.jsUI组件库。它提供了一组高质量的可重用组件,能够帮助你快速构建美观且功能强大的用户界面。以下是AntDesignVue的快速上手指南、安装步骤、使用示例,以及在使用过程中可能遇到的一些常见问题及解决方案。1.环境准......
  • Eagle 4.0:强大插件加持的素材收集管理工具
    期待很久的全新 Eagle 4.0 现已正式推出了!Eagle是一款Win/Mac双平台素材收集管理工具,它可以帮你高效整理电脑中的图片、字体、视频、音频等各种素材,是众多设计师、美图收集爱好者的信赖之选。4.0版是一次全面的革新,从全新的插件系统到实用的 AI工具,再到重新设计......
  • AI绘画SD三分钟入门教程!秋叶大佬8月最新的Stable Diffusion整合包V4.9来了,完整安装部
    大家好,我是画画的小强前几天8月15日,国内AI绘画工具开源大佬更新了StableDiffusion整合包最新版本4.9,相关信息从图中能看到,本次更新后SDWebUI已经能够支持最新的AI绘画大模型SD3.0,以及更新了SD最强的控制插件ControlNet的ControlNetUnion模型,在使用方面上,新版本对比旧版......