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

相关推荐
Shi_haoliu2 小时前
openClaw源码部署-linux
前端·python·ai·openclaw
程序员小寒2 小时前
前端性能优化之白屏、卡顿指标和网络环境采集篇
前端·javascript·网络·性能优化
烛阴3 小时前
Claude CLI AskUserQuestion 工具详解:让 AI 开口问你
前端·claude
wal13145203 小时前
OpenClaw教程(九)—— 彻底告别!OpenClaw 卸载不残留指南
前端·网络·人工智能·chrome·安全·openclaw
mon_star°3 小时前
在TypeScript中,接口MenuItem定义中,为什么有的属性带问号?,有的不带呢?
前端
牛奶3 小时前
分享一个开源项目,让 AI 辅助开发真正高效起来
前端·人工智能·全栈
次顶级4 小时前
表单多文件上传和其他参数处理
前端·javascript·html
kuntli4 小时前
Vue生命周期全解析
vue.js
why技术4 小时前
我拿到了腾讯QClaw的内测码,然后沉默了。
前端·后端