Toast 轻提示
引入
通过以下方式来全局注册组件,更多注册方式请参考。
文字提示
加载提示
使用 Toast.loading
方法展示加载提示,通过 forbidClick
属性可以禁用背景点击。
Toast.loading({
message: '加载中...',
forbidClick: true,
成功/失败提示
使用 Toast.success
方法展示成功提示,使用 Toast.fail
方法展示失败提示。
Toast.success('成功文案');
Toast.fail('失败文案');
通过 icon
选项可以自定义图标,支持传入图标名称或图片链接,等同于 Icon 组件的 。
Toast.loading({
message: '加载中...',
forbidClick: true,
loadingType: 'spinner',
});
自定义位置
Toast 默认渲染在屏幕正中位置,通过 position
属性可以控制 Toast 展示的位置。
Toast({
message: '顶部展示',
position: 'top',
});
Toast({
message: '底部展示',
position: 'bottom',
});
动态更新提示
执行 Toast 方法时会返回对应的 Toast 实例,通过修改实例上的 message
属性可以实现动态更新提示的效果。
const toast = Toast.loading({
duration: 0,
forbidClick: true,
message: '倒计时 3 秒',
const timer = setInterval(() => {
second--;
if (second) {
toast.message = `倒计时 ${second} 秒`;
} else {
clearInterval(timer);
Toast.clear();
}
}, 1000);
全局方法
通过 app.use
全局注册 Toast 组件后,会自动在 app 的所有子组件上挂载 $toast
方法,便于在组件内调用。
单例模式
Toast.allowMultiple();
const toast1 = Toast('第一个 Toast');
const toast2 = Toast.success('第二个 Toast');
toast1.clear();
toast2.clear();
通过 Toast.setDefaultOptions
函数可以全局修改 Toast 的默认配置。
Toast.setDefaultOptions({ duration: 2000 });
Toast.setDefaultOptions('loading', { forbidClick: true });
Toast.resetDefaultOptions();
方法
ToastOptions 数据结构
类型定义
组件导出以下类型定义:
import type { ToastType, ToastProps, ToastOptions, ToastPosition } from 'vant';
样式变量
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。