Toast

Toast组件主要用于非模态信息提醒,无需用户交互。

注: 由于此组件基于 create-api 实现,所以在使用之前,请确保自己了解过 create-api

示例

显示时间设置

  1. <cube-button @click="showToastTime">Toast - time 1s</cube-button>
  2. <cube-button @click="showToastTime0">Toast - time 0</cube-button>
  1. export default {
  2. methods: {
  3. showToastTime() {
  4. const toast = this.- createToast({
  5. time: 1000,
  6. txt: 'Toast time 1s'
  7. })
  8. toast.show()
  9. },
  10. showToastTime0() {
  11. const toast = this.- createToast({
  12. time: 0,
  13. txt: 'Toast time 0'
  14. })
  15. toast.show()
  16. setTimeout(() => {
  17. toast.hide()
  18. }, 2000)
  19. }
  20. }
  21. }

time 字段决定了 Toast 显示的时间,如果设置为 0,则不会消失,需要手动调用组件的 hide 方法。

显示遮罩

  1. <cube-button @click="showToastMask">Toast- with mask</cube-button>
  1. export default {
  2. methods: {
  3. showToastMask () {
  4. const toast = this.- createToast({
  5. txt: 'Loading...',
  6. mask: true
  7. })
  8. toast.show()
  9. }
  10. }
  11. }

mask 设置为 true 时会显示遮罩。

类型设置

  1. <cube-button @click="showToastType">Toast - type</cube-button>
  1. export default {
  2. methods: {
  3. showToastType() {
  4. const toast = this.$createToast({
  5. txt: 'Correct',
  6. type: 'correct'
  7. })
  8. toast.show()
  9. }
  10. }
  11. }

type 字段决定了 Toast 的显示图标类型,具体对应关系,参见下方的 Props 配置。

事件回调

  1. <cube-button @click="showToastCallback">Toast - callback</cube-button>
  1. export default {
  2. methods: {
  3. showToastCallbak() {
  4. const toast = this.$createToast({
  5. txt: 'Timeout',
  6. time: 1000,
  7. onTimeout: () => {
  8. console.log('Timeout')
  9. }
  10. })
  11. toast.show()
  12. }
  13. }
  14. }

除了设置 onTimeout 的形式,还可以通过 - events 传入事件回调。

  1. export default {
  2. methods: {
  3. showToastCallbak() {
  4. const toast = this.- createToast({
  5. txt: 'Timeout',
  6. time: 1000,
  7. - events: {
  8. timeout: () => {
  9. console.log('Timeout')
  10. }
  11. }
  12. })
  13. toast.show()
  14. }
  15. }
  16. }

Props 配置

参数 说明 类型 可选值 默认值
visible1.8.1 显示状态,是否可见。v-model绑定值 Boolean true/false false
type 类型(对应不同的 icon) String loading/correct/error/warn loading
mask 遮罩 Boolean true/false false
txt 提示信息 String - ‘’
time 显示时间 Number - 3000
maskClosable1.9.6 点击蒙层是否隐藏 Boolean true/false false

事件

事件名 说明
timeout 当显示时间结束时派发

实例方法

方法名 说明
show 显示
hide 隐藏

原文:

https://didi.github.io/cube-ui/#/zh-CN/docs/toast