Toast 轻提示

引入

  1. import Vue from 'vue';
  2. import { Toast } from 'vant';
  3. Vue.use(Toast);

代码演示

文字提示

  1. Toast('提示内容');

加载提示

使用Toast.loading方法展示加载提示,通过forbidClick属性可以禁用背景点击,通过loadingType属性可以自定义加载图标类型。

  1. Toast.loading({
  2. message: '加载中...',
  3. forbidClick: true
  4. });
  5. // 自定义加载图标
  6. Toast.loading({
  7. message: '加载中...',
  8. forbidClick: true,
  9. loadingType: 'spinner'
  10. });

成功/失败提示

  1. Toast.success('成功文案');
  2. Toast.fail('失败文案');

自定义图标

  1. Toast({
  2. message: '自定义图标',
  3. icon: 'like-o'
  4. });
  5. Toast({
  6. message: '展示图片',
  7. icon: 'https://img.yzcdn.cn/vant/logo.png'
  8. });

动态更新提示

  1. const toast = Toast.loading({
  2. duration: 0, // 持续展示 toast
  3. forbidClick: true,
  4. message: '倒计时 3 秒'
  5. });
  6. let second = 3;
  7. const timer = setInterval(() => {
  8. second--;
  9. if (second) {
  10. toast.message = `倒计时 ${second} 秒`;
  11. } else {
  12. clearInterval(timer);
  13. // 手动清除 Toast
  14. Toast.clear();
  15. }
  16. }, 1000);

组件内调用

引入 Toast 组件后,会自动在 Vue 的 prototype 上挂载 $toast 方法,便于在组件内调用。

  1. export default {
  2. mounted() {
  3. this.$toast('提示文案');
  4. }
  5. }

单例模式

Toast 默认采用单例模式,即同一时间只会存在一个 Toast,如果需要在同一时间弹出多个 Toast,可以参考下面的示例

  1. Toast.allowMultiple();
  2. const toast1 = Toast('第一个 Toast');
  3. const toast2 = Toast.success('第二个 Toast');
  4. toast1.clear();
  5. toast2.clear();

修改默认配置

通过Toast.setDefaultOptions函数可以全局修改 Toast 的默认配置

  1. // 将所有 Toast 的展示时长设置为 2000 毫秒
  2. Toast.setDefaultOptions({ duration: 2000 });
  3. // 将所有 loading Toast 设置为背景不可点击 (2.2.10 版本开始支持)
  4. Toast.setDefaultOptions('loading', { forbidClick: true });
  5. // 重置所有 Toast 的默认配置
  6. Toast.resetDefaultOptions();
  7. // 重置 loading Toast 的默认配置 (2.2.10 版本开始支持)
  8. Toast.resetDefaultOptions('loading');

API

方法

方法名说明参数返回值
Toast展示提示options | messagetoast 实例
Toast.loading展示加载提示options | messagetoast 实例
Toast.success展示成功提示options | messagetoast 实例
Toast.fail展示失败提示options | messagetoast 实例
Toast.clear关闭提示clearAll: booleanvoid
Toast.allowMultiple允许同时存在多个 Toast-void
Toast.setDefaultOptions修改默认配置,对所有 Toast 生效。传入 type 可以修改指定类型的默认配置type | optionsvoid
Toast.resetDefaultOptions重置默认配置,对所有 Toast 生效。传入 type 可以重置指定类型的默认配置typevoid

Options

参数说明类型默认值
type提示类型,可选值为 loading successfail htmlstringtext
position位置,可选值为 top bottomstringmiddle
message文本内容,支持通过\n换行string''
icon v2.0.1自定义图标,支持传入图标名称或图片链接,可选值见 Icon 组件string-
iconPrefix v2.0.9图标类名前缀stringvan-icon
overlay v2.2.13是否显示背景遮罩层booleanfalse
forbidClick是否禁止背景点击booleanfalse
closeOnClick v2.1.5是否在点击后关闭booleanfalse
closeOnClickOverlay v2.2.13是否在点击遮罩层后关闭booleanfalse
loadingType加载图标类型, 可选值为 spinnerstringcircular
duration展示时长(ms),值为 0 时,toast 不会消失number2000
className自定义类名any-
onOpened完全展示后的回调函数Function-
onClose关闭时的回调函数Function-
transition v2.2.6动画类名,等价于 transtionname属性string-
getContainer指定挂载的节点,可以传入选择器,或一个返回节点的函数string | () => Elementbody

Toast 轻提示 - 图1