Notification 通知提醒框

全局展示通知提醒信息。

何时使用

在系统四个角显示通知提醒信息。经常用于以下情况:

  • 较为复杂的通知内容。
  • 带有交互的通知,给出用户下一步的行动点。
  • 系统主动推送。

代码演示

基本

最简单的用法,4.5 秒后自动关闭。

  1. <template>
  2. <button type="button" class="ant-btn ant-btn-primary" @click="openNotification">
  3. <span>打开通知提醒框</span>
  4. </button>
  5. </template>
  6. <script>
  7. export default {
  8. methods: {
  9. openNotification() {
  10. this.$notification.open({
  11. message: '这是标题',
  12. description: '这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案',
  13. onClose: close
  14. });
  15. }
  16. }
  17. }
  18. </script>

自动关闭的延时

自定义通知框自动关闭的延时,默认4.5s,取消自动关闭只要将该值设为 0 即可。可通过this.$notification.close(selfKey) 手动关闭通知框

  1. <template>
  2. <button type="button" class="ant-btn ant-btn-primary" @click="openNotificationInfinite">
  3. <span>打开通知提醒框</span>
  4. </button>
  5. <button type="button" class="ant-btn ant-btn-primary" @click="closeNotice">
  6. <span>关闭通知提醒框</span>
  7. </button>
  8. </template>
  9. <script>
  10. export default {
  11. methods: {
  12. openNotificationInfinite() {
  13. this.$notification.info({
  14. message: '这是标题',
  15. description: '我不会自动关闭,我不会自动关闭,我不会自动关闭,我不会自动关闭,我不会自动关闭,我不会自动关闭,我不会自动关闭',
  16. duration: 0,
  17. selfKey:'noClose'
  18. });
  19. },
  20. closeNotice(){
  21. this.$notification.close('noClose');
  22. }
  23. }
  24. }
  25. </script>

带有Icon的通知提醒框

通知提醒框左侧有图标。

  1. <template>
  2. <button type="button" class="ant-btn" @click="openNotificationWithIcon('success')"><span>成 功</span></button>
  3. <button type="button" class="ant-btn" @click="openNotificationWithIcon('info')"><span>消 息</span></button>
  4. <button type="button" class="ant-btn" @click="openNotificationWithIcon('warning')"><span>警 告</span></button>
  5. <button type="button" class="ant-btn" @click="openNotificationWithIcon('error')"><span>错 误</span></button>
  6. </template>
  7. <script>
  8. export default {
  9. methods: {
  10. openNotificationWithIcon(type) {
  11. this.$notification[type]({
  12. message: '这是标题',
  13. description: '这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案'
  14. });
  15. }
  16. }
  17. }
  18. </script>

位置

可以设置通知从右上角、右下角、左下角、左上角弹出。

  1. <template>
  2. <v-select style="width: 120px;" :data="options" @change="onPlacementChange"></v-select>
  3. <button type="button" class="ant-btn ant-btn-primary" @click="openNotification">
  4. <span>打开通知提醒框</span>
  5. </button>
  6. </template>
  7. <script>
  8. const options = [{
  9. value: 'topLeft',
  10. label: 'topLeft'
  11. }, {
  12. value: 'topRight',
  13. label: 'topRight'
  14. }, {
  15. value: 'bottomLeft',
  16. label: 'bottomLeft'
  17. }, {
  18. value: 'bottomRight',
  19. label: 'bottomRight'
  20. }];
  21. export default {
  22. data () {
  23. return {
  24. options
  25. }
  26. },
  27. methods: {
  28. openNotification() {
  29. this.$notification.info({
  30. message: '这是标题',
  31. description: '这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案这是提示框的文案',
  32. onClose: close
  33. });
  34. },
  35. onPlacementChange(val) {
  36. this.$notification.config({
  37. placement: val,
  38. });
  39. },
  40. }
  41. }
  42. </script>

API

  • this.$notification.success(config)
  • this.$notification.error(config)
  • this.$notification.info(config)
  • this.$notification.warning(config)
  • this.$notification.close(selfKey:String)

config 参数如下:

参数说明类型默认值
message通知提醒标题,必选string-
description通知提醒内容,必选string-
selfKey当前通知唯一标志string-
duration默认自动关闭延时,设置为 null或者0 则不自动关闭,单位秒number4.5
placement弹出位置,可选 topLeft topRight bottomLeft bottomRightstringtopRight
onClose关闭通知弹框时触发的回调函数(注:手动触发关闭不触发回调)Function-

还提供了一个全局配置方法,在调用前提前配置,全局一次生效。

  • this.$notification.config(options)
  1. this.$notification.config({
  2. top: 100,
  3. duration: 3,
  4. });

options 参数如下:

参数说明类型默认值
placement弹出位置,可选 topLeft topRight bottomLeft bottomRightstringtopRight
top消息从顶部弹出时,距离顶部的位置,单位像素。number24
bottom消息从底部弹出时,距离底部的位置,单位像素。number24
duration默认自动关闭延时,单位秒number4.5