消息提示
用于在活动中显示反馈。与通知的不同之处在于,后者通常用于显示系统级的被动通知。
基础用法
默认情况下显示在顶部,3 秒后消失。您可以使用 placement 属性来控制位置。
类型
用于显示成功、警告、消息和错误活动的结果反馈。
朴素 2.6.3
设置 plain 属性,消息的背景将变为朴素样式。
可关闭
可以添加一个关闭按钮。
使用 HTML 字符串
message 属性支持 HTML 片段。
警告
message 属性虽然支持传入 HTML 片段,但是在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 XSS 攻击。 因此,当 dangerouslyUseHTMLString 打开的情况下,请确保 message 的内容是可信的,永远不要将用户提交的内容赋值给 message 属性。
分组
合并具有相同内容的消息。
位置 2.11.0
控制消息出现的位置。消息可以显示在视口的顶部 (默认) 或其他位置。
全局方法
Element Plus 为 app.config.globalProperties 添加了一个全局方法 $message。因此,在 Vue 实例中,您可以像本页一样调用 Message。
局部导入
ts
import { ElMessage } from 'element-plus'在这种情况下,您应该调用 ElMessage(options)。我们还为不同类型注册了方法,例如 ElMessage.success(options)。您可以调用 ElMessage.closeAll() 来手动关闭所有实例。
应用上下文继承 2.0.3
现在,消息构造函数的第二个参数接受一个 context,它允许您将当前应用程序的上下文注入到消息中,从而允许您继承应用程序的所有属性。
您可以像这样使用它
提示
如果您全局注册了 ElMessage 组件,它将自动继承您的应用上下文。
ts
import { getCurrentInstance } from 'vue'
import { ElMessage } from 'element-plus'
// in your setup method
const { appContext } = getCurrentInstance()!
ElMessage({}, appContext)API
配置项
| 名称 | 描述 | 类型 | 默认值 |
|---|---|---|---|
| message | 消息文字 | string / VNode / () => VNode | '' |
| type | 消息类型 | 枚举 | 信息 |
| 朴素 2.6.3 | 消息是否为朴素样式 | boolean | false |
| icon | 自定义图标组件,会覆盖 type | string / Component | — |
| dangerouslyUseHTMLString | message 是否被当作 HTML 字符串处理 | boolean | false |
| customClass | 为 Message 自定义类名 | string | '' |
| duration | 显示时长,毫秒。设为 0 则不会自动关闭 | number | 3000 |
| showClose | 是否显示关闭按钮 | boolean | false |
| onClose | 关闭时的回调函数,参数为消息实例 | Function | — |
| offset | 设置到视口边缘的距离 (当 placement 为 'top' 时为顶部,当 placement 为 'bottom' 时为底部) | number | 16 |
| placement 2.11.0 | 消息放置位置 | 枚举 | 上 |
| 附加到 | 设置消息的根元素,默认为 document.body | CSSSelector / HTMLElement | — |
| 分组 | 合并内容相同的消息,不支持 VNode 类型的消息 | boolean | false |
| 重复次数 | 重复次数,类似徽章,与 grouping 一起使用时作为初始数字 | number | 1 |
方法
Message 和 this.$message 返回当前的消息实例。要手动关闭实例,您可以在其上调用 close。
| 名称 | 描述 | 类型 |
|---|---|---|
| 关闭 | 关闭消息 | Function |