ant design vue Message 用法以及内容为 html片段情况

ant design vue 的 Message 用法

全局展示操作反馈信息

何时使用 #

  1. 可提供成功、警告和错误等反馈信息。
  2. 顶部居中显示并自动消失,是一种不打断用户操作的轻量级提示方式。

全局配置:

复制代码
// main.ts

// 进行全局配置
message.config({
  top: `0.7rem`,//高度位置
  duration: 2,//提示持续时间
  maxCount: 1,//最大页面同时展示几条
});

项目中最常用的用法:

1、字符串

复制代码
message.success("导入成功");

2、html片段

复制代码
message.error({
      content: h(
        "span",
        { style: "display: inline-table;text-align: left;" },"通知内容"
      ),
    });

我这边项目传过来的数据可能参杂<br>,所以我封装了个公共方法:

复制代码
// utils.ts

import { h } from "vue";
import { message } from "ant-design-vue";
// 接口返回html字段根据<br>进行拆分处理
export function htmlToList(msg: string, type?: string) {
  const lines = msg.split("<br>");
  if (type && type == "warning") {
    message.warning({
      content: h(
        "span",
        { style: "display: inline-table;text-align: left;" },
        lines.map((line, index) => {
          return [
            h("span", null, line),
            index < lines.length - 1 ? h("br") : null,
          ];
        })
      ),
    });
  } else {
    message.error({
      content: h(
        "span",
        { style: "display: inline-table;text-align: left;" },
        lines.map((line, index) => {
          return [
            h("span", null, line),
            index < lines.length - 1 ? h("br") : null,
          ];
        })
      ),
    });
  }
}

因为ant design vue中message并不像element-plus中存在

属性,而是

所以需要借助vue3中的h函数( createVNode)去创造虚拟dom

相关推荐
加油乐4 分钟前
解决 iOS 端输入框聚焦时页面上移问题
前端·javascript·ios
鹏多多4 分钟前
纯前端提取图片颜色插件Color-Thief教学+实战完整指南
前端·javascript·vue.js
Moment5 分钟前
Soul 发布超强端侧语音模型,没错,就是你想的那个 Soul 😍😍😍
前端·后端·github
井柏然8 分钟前
重识 alias —— npm包开发的神器
前端·javascript·前端工程化
Mintopia11 分钟前
🤖 AIGC在Web教育场景中的自适应学习技术设计
前端·javascript·aigc
Mintopia15 分钟前
⚙️ Next.js 多环境部署全攻略
前端·javascript·全栈
cngm11027 分钟前
若依分离版前端部署在tomcat刷新404的问题解决方法
java·前端·tomcat
摸鱼的春哥27 分钟前
组合为啥比继承更高级?以构建buff系统为例
前端·javascript·后端
江城开朗的豌豆28 分钟前
让TS函数"说到做到":返回值类型约束的实战心得
前端·javascript
晓得迷路了35 分钟前
栗子前端技术周刊第 104 期 - Rspack 1.6、Turborepo 2.6、Chrome 142...
前端·javascript·chrome