当前位置: 首页 > news >正文

ElementUI浅尝辄止26:Notification 通知

悬浮出现在页面角落,显示全局的通知提醒消息。

1.如何使用?

适用性广泛的通知栏

//Notification 组件提供通知功能,Element 注册了$notify方法,接收一个options字面量参数,在最简单的情况下,你可以设置title字段和message字段,用于设置通知的标题和正文。默认情况下,经过一段时间后 Notification 组件会自动关闭,但是通过设置duration,可以控制关闭的时间间隔,特别的是,如果设置为0,则不会自动关闭。注意:duration接收一个Number,单位为毫秒,默认为4500。<template><el-buttonplain@click="open1">可自动关闭</el-button><el-buttonplain@click="open2">不会自动关闭</el-button>
</template><script>export default {methods: {open1() {const h = this.$createElement;this.$notify({title: '标题名称',message: h('i', { style: 'color: teal'}, '这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案这是提示文案')});},open2() {this.$notify({title: '提示',message: '这是一条不会自动关闭的消息',duration: 0});}}}
</script>

2.带有倾向性

带有 icon,常用来显示「成功、警告、消息、错误」类的系统消息

//Element 为 Notification 组件准备了四种通知类型:success, warning, info, error。通过type字段来设置,除此以外的值将被忽略。同时,我们也为 Notification 的各种 type 注册了方法,可以在不传入type字段的情况下像open3和open4那样直接调用。<template><el-buttonplain@click="open1">成功</el-button><el-buttonplain@click="open2">警告</el-button><el-buttonplain@click="open3">消息</el-button><el-buttonplain@click="open4">错误</el-button>
</template><script>export default {methods: {open1() {this.$notify({title: '成功',message: '这是一条成功的提示消息',type: 'success'});},open2() {this.$notify({title: '警告',message: '这是一条警告的提示消息',type: 'warning'});},open3() {this.$notify.info({title: '消息',message: '这是一条消息的提示消息'});},open4() {this.$notify.error({title: '错误',message: '这是一条错误的提示消息'});}}}
</script>

3.自定义弹出位置

可以让 Notification 从屏幕四角中的任意一角弹出

使用position属性定义 Notification 的弹出位置,支持四个选项:top-righttop-leftbottom-rightbottom-left,默认为top-right

<template><el-buttonplain@click="open1">右上角</el-button><el-buttonplain@click="open2">右下角</el-button><el-buttonplain@click="open3">左下角</el-button><el-buttonplain@click="open4">左上角</el-button>
</template><script>export default {methods: {open1() {this.$notify({title: '自定义位置',message: '右上角弹出的消息'});},open2() {this.$notify({title: '自定义位置',message: '右下角弹出的消息',position: 'bottom-right'});},open3() {this.$notify({title: '自定义位置',message: '左下角弹出的消息',position: 'bottom-left'});},open4() {this.$notify({title: '自定义位置',message: '左上角弹出的消息',position: 'top-left'});}}}
</script>

4.带有偏移

让 Notification 偏移一些位置

Notification 提供设置偏移量的功能,通过设置 offset 字段,可以使弹出的消息距屏幕边缘偏移一段距离。注意在同一时刻,所有的 Notification 实例应当具有一个相同的偏移量。

<template><el-buttonplain@click="open">偏移的消息</el-button>
</template><script>export default {methods: {open() {this.$notify({title: '偏移',message: '这是一条带有偏移的提示消息',offset: 100});}}}
</script>

5.使用 HTML 片段

message 属性支持传入 HTML 片段

dangerouslyUseHTMLString属性设置为 true,message 就会被当作 HTML 片段处理。

<template><el-buttonplain@click="open">使用 HTML 片段</el-button>
</template><script>export default {methods: {open() {this.$notify({title: 'HTML 片段',dangerouslyUseHTMLString: true,message: '<strong>这是 <i>HTML</i> 片段</strong>'});}}}
</script>

message 属性虽然支持传入 HTML 片段,但是在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 XSS 攻击。因此在 dangerouslyUseHTMLString 打开的情况下,请确保 message 的内容是可信的,永远不要将用户提交的内容赋值给 message 属性。

6.隐藏关闭按钮

可以不显示关闭按钮

showClose属性设置为false即可隐藏关闭按钮。

<template><el-buttonplain@click="open">隐藏关闭按钮</el-button>
</template><script>export default {methods: {open() {this.$notify.success({title: 'Info',message: '这是一条没有关闭按钮的消息',showClose: false});}}}
</script>

7.全局方法

Element 为 Vue.prototype 添加了全局方法 $notify。因此在 vue instance 中可以采用本页面中的方式调用 Notification。

8.单独引用

单独引入 Notification:

import { Notification } from 'element-ui';

此时调用方法为 Notification(options)。我们也为每个 type 定义了各自的方法,如 Notification.success(options)。并且可以调用 Notification.closeAll() 手动关闭所有实例。

http://www.lryc.cn/news/161322.html

相关文章:

  • IDEA新建的Moudle失效显示为灰色
  • Protobuf的简单使用
  • OpenCV 12(图像直方图)
  • LeetCode 面试题 03.06. 动物收容所
  • 快速理解DDD领域驱动设计架构思想-基础篇 | 京东物流技术团队
  • C++学习笔记(堆栈、指针、命名空间、编译步骤)
  • Rust Yew应用开发的事件初探
  • 高并发下单例线程安全
  • 【EKF】EKF原理
  • 蓝桥杯官网填空题(古堡算式)
  • Python---集合set
  • LORA项目源码解读
  • Azure + React + ASP.NET Core 项目笔记一:项目环境搭建(一)
  • html 学习 之 文本标签
  • 联发科3纳米芯片预计2024年量产,此前称仍未获批给华为供货
  • 搭建vue3项目并git管理
  • 【Azure OpenAI】OpenAI Function Calling 101
  • 立晶半导体Cubic Lattice Inc 专攻音频ADC,音频DAC,音频CODEC,音频CLASS D等CL7016
  • 【Flutter】支持多平台 多端保存图片到本地相册 (兼容 Web端 移动端 android 保存到本地)
  • postgresql 安装教程
  • 手写数据库连接池
  • 在CentOS7上增加swap空间
  • @Autowired和@Resource
  • QTableView通过setColumnWidth设置了列宽无效的问题
  • 【用unity实现100个游戏之10】复刻经典俄罗斯方块游戏
  • Docker容器内数据备份到系统本地
  • 学信息系统项目管理师第4版系列06_项目管理概论
  • Java发送(QQ)邮箱、验证码发送
  • PostgresSQL----基于Kubernetes部署PostgresSQL
  • 7 个适合初学者的项目,可帮助您开始使用 ChatGPT