• Notice 通知提醒
    • 概述
    • 代码示例
    • API
      • Notice instance

    Notice 通知提醒

    概述

    在界面右上角显示可关闭的全局通知,常用于以下场景:

    • 通知内容带有描述信息
    • 系统主动推送

    代码示例

    Notice 通知提醒 - 图1

    基础用法

    基本用法,默认在 4.5秒后关闭。如果 desc 参数为空或不填,则自动应用仅标题模式下的样式。

    建议标题言简意赅,例如"删除成功",更详细的内容可以放在描述信息里。

    1. <template>
    2. <Button type="primary" @click="open(false)">Open notice</Button>
    3. <Button @click="open(true)">Open notice(only title)</Button>
    4. </template>
    5. <script>
    6. export default {
    7. methods: {
    8. open (nodesc) {
    9. this.$Notice.open({
    10. title: 'Notification title',
    11. desc: nodesc ? '' : 'Here is the notification description. Here is the notification description. '
    12. });
    13. }
    14. }
    15. }
    16. </script>

    Notice 通知提醒 - 图2

    提醒类型

    带有状态图标的提醒。

    1. <template>
    2. <p>With desc</p>
    3. <Button @click="info(false)">Info</Button>
    4. <Button @click="success(false)">Success</Button>
    5. <Button @click="warning(false)">Warning</Button>
    6. <Button @click="error(false)">Error</Button>
    7. <p>Only title</p>
    8. <Button @click="info(true)">Info</Button>
    9. <Button @click="success(true)">Success</Button>
    10. <Button @click="warning(true)">Warning</Button>
    11. <Button @click="error(true)">Error</Button>
    12. </template>
    13. <script>
    14. export default {
    15. methods: {
    16. info (nodesc) {
    17. this.$Notice.info({
    18. title: 'Notification title',
    19. desc: nodesc ? '' : 'Here is the notification description. Here is the notification description. '
    20. });
    21. },
    22. success (nodesc) {
    23. this.$Notice.success({
    24. title: 'Notification title',
    25. desc: nodesc ? '' : 'Here is the notification description. Here is the notification description. '
    26. });
    27. },
    28. warning (nodesc) {
    29. this.$Notice.warning({
    30. title: 'Notification title',
    31. desc: nodesc ? '' : 'Here is the notification description. Here is the notification description. '
    32. });
    33. },
    34. error (nodesc) {
    35. this.$Notice.error({
    36. title: 'Notification title',
    37. desc: nodesc ? '' : 'Here is the notification description. Here is the notification description. '
    38. });
    39. }
    40. }
    41. }
    42. </script>

    Notice 通知提醒 - 图3

    自定义时长

    自定义时长,为 0 则不自动关闭。也可以在Notice.config()中全局配置,详见API。

    1. <template>
    2. <Button type="primary" @click="time">Open notice</Button>
    3. </template>
    4. <script>
    5. export default {
    6. methods: {
    7. time () {
    8. this.$Notice.open({
    9. title: 'Notification title',
    10. desc: 'This notification does not automatically close, and you need to click the close button to close.',
    11. duration: 0
    12. });
    13. }
    14. }
    15. }
    16. </script>

    Notice 通知提醒 - 图4

    Render 函数

    你可以自定义 Render 函数来替代 desc

    1. <template>
    2. <Button type="primary" @click="renderFunc">Open notice</Button>
    3. </template>
    4. <script>
    5. export default {
    6. methods: {
    7. renderFunc () {
    8. this.$Notice.success({
    9. title: 'Notification title',
    10. desc: 'The desc will hide when you set render.',
    11. render: h => {
    12. return h('span', [
    13. 'This is created by ',
    14. h('a', 'render'),
    15. ' function'
    16. ])
    17. }
    18. });
    19. }
    20. }
    21. }
    22. </script>

    API

    Notice instance

    通过直接调用以下方法来使用组件:

    • this.$Notice.open(config)
    • this.$Notice.info(config)
    • this.$Notice.success(config)
    • this.$Notice.warning(config)
    • this.$Notice.error(config)以上方法隐式地创建及维护Vue组件。参数 config 为对象,具体说明如下:
    属性说明类型默认值
    title通知提醒的标题String-
    desc通知提醒的内容,为空或不填时,自动应用仅标题模式下的样式String-
    render自定义描述内容,使用 Vue 的 Render 函数,如果同时设置了 render 和 desc,则只显示 render 的内容Function-
    duration自动关闭的延时,单位秒,不关闭可以写 0Number4.5
    name当前通知的唯一标识String自动
    onClose关闭时的回调Function-

    另外提供了全局配置、全局关闭某个通知和全局销毁的方法:

    • this.$Notice.config(options)
    • this.$Notice.close(name)
    • this.$Notice.destroy()
    1. this.$Notice.config({
    2. top: 50,
    3. duration: 3
    4. });
    属性说明类型默认值
    top通知组件距离顶端的距离,单位像素Number24
    duration默认自动关闭的延时,单位秒Number4.5