VUE Element-ui Message 消息提示组件自定义封装

为了让message 信息提示的更加方便快捷,减少不同地方的调用,避免代码的重复,特意再官方message 组件的基础上二次封装,使代码更加的优雅和高效。

实现效果:
代码组件:

封装成 message.js 文件,放在 utils 文件夹中,即可按需引用也可以再man.js全局引用。

复制代码
//引入官方组件

import { Message } from 'element-ui'

// 默认参数
const defaultOption = {
    duration: 3000,
    customClass: 'custom-notification',
}

const message = {}

const globalMessage = function (type, msg = '', customOption = {}) {
    return Message({
        ...Object.assign({}, defaultOption, customOption),
        type,
        dangerouslyUseHTMLString: true,
        message: `<p>${msg}</p>`,
    })
}

message.success = function (msg, cpt) {
    return globalMessage('success', msg, cpt)
}
message.error = function (msg, cpt) {
    return globalMessage('error', msg, cpt)
}
message.warning = function (msg, cpt) {
    return globalMessage('warning', msg, cpt)
}

export default message
使用:

1、常规的信息提示

复制代码
this.$message.success('这是一条不会自动关闭的成功消息' || res.data.msg)

this.$message.warning('这是一条不会自动关闭的警告消息' || res.data.msg)

this.$message.error('这是一条不会自动关闭的错误消息' || res.data.msg)

2、个性化传参

复制代码
      this.$message.error(res.data.msg || '这是一条测试的消息', {
          duration: 0, //显示时间, 毫秒。设为 0 则不会自动关闭
          showClose: true, //是否显示关闭按钮
          center: true, //文字是否居中
          customClass: 'custom-notification', //自定义类名
      })

结合官方文档,可自定义传参,满足多场景需求。

相关推荐
脾气有点小暴11 小时前
详解 HTML Image 的 mode 属性:图像显示模式的灵活控制
前端·html·uniapp
爱吃无爪鱼12 小时前
03-Bun vs Node.js:JavaScript 运行时的新旧之争
javascript·vue.js·react.js·npm·node.js
0思必得012 小时前
[Web自动化] 开发者工具性能(Performance)面板
运维·前端·自动化·web自动化·开发者工具
心灵的制造商12 小时前
el-tree左侧新增类别和删除类别实例代码
前端·javascript·vue.js
爱吃无爪鱼12 小时前
01-前端开发快速入门路线图
javascript·css·vue.js·typescript·前端框架·npm·node.js
冴羽12 小时前
不知道怎么写 Nano Banana Pro 提示词?分享你一个结构化示例,复刻任意图片
前端·人工智能·aigc
IT_陈寒12 小时前
JavaScript 性能优化:7个 V8 引擎隐藏技巧让你的代码提速200%
前端·人工智能·后端
脾气有点小暴12 小时前
uniapp通用单张图片上传组件
前端·javascript·vue.js·uni-app·uniapp
小菜今天没吃饱12 小时前
DVWA-XSS(stored)
前端·网络安全·xss·dvwa
云飞云共享云桌面12 小时前
研发部门使用SolidWorks,三维设计云桌面应该怎么选?
运维·服务器·前端·网络·自动化·电脑