适用性广泛的通知栏

    Notification 组件提供通知功能,Element 注册了方法,接收一个options字面量参数,在最简单的情况下,你可以设置title字段和message字段,用于设置通知的标题和正文。默认情况下,经过一段时间后 Notification 组件会自动关闭,但是通过设置duration,可以控制关闭的时间间隔,特别的是,如果设置为0,则不会自动关闭。注意:duration接收一个Number,单位为毫秒,默认为4500

    带有倾向性

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

    Notification 通知 - 图1

    Element 为 Notification 组件准备了四种通知类型:success, warning, info, error。通过type字段来设置,除此以外的值将被忽略。同时,我们也为 Notification 的各种 type 注册了方法,可以在不传入type字段的情况下像open3open4那样直接调用。

    1. <template>
    2. <el-button
    3. plain
    4. @click="open1">
    5. 成功
    6. </el-button>
    7. <el-button
    8. plain
    9. @click="open2">
    10. 警告
    11. </el-button>
    12. <el-button
    13. plain
    14. @click="open3">
    15. 消息
    16. </el-button>
    17. <el-button
    18. plain
    19. @click="open4">
    20. 错误
    21. </el-button>
    22. </template>
    23. <script>
    24. export default {
    25. methods: {
    26. this.$notify({
    27. title: '成功',
    28. message: '这是一条成功的提示消息',
    29. });
    30. },
    31. open2() {
    32. this.$notify({
    33. title: '警告',
    34. message: '这是一条警告的提示消息',
    35. type: 'warning'
    36. });
    37. },
    38. open3() {
    39. this.$notify.info({
    40. title: '消息',
    41. message: '这是一条消息的提示消息'
    42. });
    43. },
    44. open4() {
    45. this.$notify.error({
    46. title: '错误',
    47. message: '这是一条错误的提示消息'
    48. });
    49. }
    50. }
    51. }
    52. </script>

    自定义弹出位置

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

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

    让 Notification 偏移一些位置

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

    1. <template>
    2. <el-button
    3. plain
    4. @click="open">
    5. 偏移的消息
    6. </template>
    7. <script>
    8. export default {
    9. methods: {
    10. open() {
    11. title: '偏移',
    12. message: '这是一条带有偏移的提示消息',
    13. offset: 100
    14. });
    15. }
    16. }
    17. }
    18. </script>

    使用 HTML 片段

    message 属性支持传入 HTML 片段

    Notification 通知 - 图2

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

    隐藏关闭按钮

    可以不显示关闭按钮

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

    1. <template>
    2. <el-button
    3. plain
    4. @click="open">
    5. 隐藏关闭按钮
    6. </el-button>
    7. </template>
    8. <script>
    9. export default {
    10. methods: {
    11. open() {
    12. this.$notify.success({
    13. title: 'Info',
    14. message: '这是一条没有关闭按钮的消息',
    15. showClose: false
    16. });
    17. }
    18. }
    19. }
    20. </script>

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

    单独引用

    单独引入 Notification:

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

    Options

    调用 Notification 或 会返回当前 Notification 的实例。如果需要手动关闭实例,可以调用它的 close 方法。

    方法名说明
    close关闭当前的 Notification