pumpkin-ui
指南
组件
指南
组件
  • 基础组件

    • Button 按钮
    • Cell 单元格
    • Icon 图标
    • Popup 弹出层
    • Toast 轻提示
  • 表单组件

    • PickerView 选择器视图
    • Picker 选择器
    • DatePicker 日期时间选择器
    • Switch 开关
    • Field 输入项
    • Form 表单
    • Checkbox 复选框
    • Radio 单选框
  • 反馈组件

    • Overlay 遮罩
    • Loading 加载
    • ActionSheet 动作面板
    • Notify 消息提示
    • Skeleton 骨架屏
    • Dialog 对话框
  • 展示组件

    • Progress 进度条
    • Divider 分割线
    • Badge 徽标
    • Empty 空元素
    • Tag 标签

Toast 轻提示

基本使用

命令式调用

script
import { Toast } from "@pumpkin-ui/mobile"

Toast.show('toast消息')

代码示例

基础用法

通过show函数调用,第一个传入需要展示的文本内容即可。第一个参数也支持传入对象,对象中可以传入type、text、overlay等属性。

template
<div class="toast-container">
    <pk-cell-group>
        <pk-cell is-link @click="Toast.show('基础用法')">
            <template #title>基础用法</template>
        </pk-cell>
    </pk-cell-group>
</div>
script
import { Toast, PkCell, PkCellGroup } from "@pumpkin-ui/mobile"

style
.toast-container {
    padding: 0;
}

加载

通过showLoading函数调用,第一个传入需要展示的文本内容即可。第一个参数也支持传入对象,对象中可以传入text、overlay等属性。 可通过hideLoading函数关闭。

template
<div class="toast-container">
    <pk-cell-group>
        <pk-cell is-link @click="showLoading">
            <template #title>加载用法</template>
        </pk-cell>
    </pk-cell-group>
</div>
script
import { Toast, PkCell, PkCellGroup} from "@pumpkin-ui/mobile"

const showLoading = () => {
    Toast.showLoading('加载加载')

    setTimeout(() => {
        Toast.hideLoading()
    }, 2000)
}

style
.toast-container {
    padding: 0;
}

使用命令式调用时,可以通过返回的close关闭。

template
<div class="toast-container">
    <pk-cell-group>
        <pk-cell is-link @click="showLoadingClose">
            <template #title>加载用法(通过close关闭)</template>
        </pk-cell>
    </pk-cell-group>
</div>
script
import { Toast, PkCell, PkCellGroup} from "@pumpkin-ui/mobile"

const showLoadingClose = () => {
    const { close } = Toast.showLoading('加载,close关闭')

    setTimeout(() => {
        close();
    }, 2000)
}

style
.toast-container {
    padding: 0;
}

自定义位置

可通过position参数控制轻提示显示的位置,可选值有'top'| 'bottom'|'center'。

template
<div class="toast-container">
    <pk-cell-group>
        <pk-cell is-link @click="Toast.show({
            text: 'top',
            position: 'top'
        })">
            <template #title>top</template>
        </pk-cell>
        <pk-cell is-link @click="Toast.show({
            text: 'bottom',
            position: 'bottom'
        })">
            <template #title>bottom</template>
        </pk-cell>
        <pk-cell is-link @click="Toast.show({
            text: 'center',
            position: 'center'
        })">
            <template #title>center</template>
        </pk-cell>
    </pk-cell-group>
</div>
script
import { Toast, PkCell, PkCellGroup } from "@pumpkin-ui/mobile"

style
.toast-container {
    padding: 0;
}

同时显示多个轻提示

通过Toast.setMultiple可控制是否支持同时显示多个轻提示。

WARNING

同时显示多个轻提示为true时,type为loading的组件也只能同时显示一个。

template
<div class="toast-container">
    <pk-cell-group>
        <pk-cell is-link @click="Toast.setMultiple(true); Toast.show('开启同时显示多个')">
            <template #title>开启同时显示多个</template>
        </pk-cell>
        <pk-cell is-link @click="Toast.setMultiple(false); Toast.show('关闭同时显示多个')">
            <template #title>关闭同时显示多个</template>
        </pk-cell>
    </pk-cell-group>
</div>
script
import { Toast, PkCell, PkCellGroup } from "@pumpkin-ui/mobile"

style
.toast-container {
    padding: 0;
}

API

命令式调用

方法

方法说明类型
Toast.show显示轻提示(option: ToastOptions | string)=>{close:()=>void}
Toast.closeAllToast关闭所有命令式调用的轻提示(不能关闭Loading)()=>void
Toast.showLoading显示Loading(option: LoadingOptions | string)=>{close:()=>void}
Toast.hideLoading隐藏命令式调用的Loading()=>void
Toast.setMultiple是否允许同时显示多个轻提示(m:boolean = true)=>void

ToastOptions

属性名说明类型默认值
type轻提示类型'text'| 'loading'text
text轻提示文字string
overlay是否显示遮罩层booleanfalse
overlayBackgroundColor遮罩层背景色stringtransparent
position轻提示位置'top'| 'bottom'|'center'center
duration轻提示显示时长,type为loading时,该值无效,须调用close或使用Toast.hideLoading关闭number2000
onClose轻提示关闭时触发()=>void
onClosed轻提示关闭动画结束触发()=>void
onOpen轻提示打开时触发()=>void
onOpened轻提示打开动画结束时触发()=>void

LoadingOptions

属性名说明类型默认值
text轻提示文字string
overlay是否显示遮罩层booleantrue
overlayBackgroundColor遮罩层背景色stringtransparent
position轻提示位置'top'| 'bottom'|'center'center
onClose轻提示关闭时触发()=>void
onClosed轻提示关闭动画结束触发()=>void
onOpen轻提示打开时触发()=>void
onOpened轻提示打开动画结束时触发()=>void

Props

属性名说明类型默认值可选值
v-model是否显示轻提示组件,双向绑定boolean
type轻提示类型'text'| 'loading'text'text'| 'loading'
text轻提示文字string
overlay是否显示遮罩层booleanfalse
overlay-background-bolor遮罩层背景颜色stringtransparent
position轻提示显示的位置'top'| 'bottom'|'center'center'top'| 'bottom'|'center'
duration轻提示显示时长,type为loading时,该值无效number2000

Events

事件名说明回调参数
onOpen打开时触发() => void
onClose打开时触发() => void
onOpened打开动画结束时触发() => void
onClosed关闭动画结束时触发() => void

Slot

插槽名说明
text文字显示位置的插槽
icon图标显示位置的插槽

Exposes

名称说明类型说明
updateShow更新轻提示显示(show:boolean = true)=>void

样式变量

名称默认值说明
--pk-toast-position-top-distance5%
--pk-toast-position-bottom-distance5%
--pk-toast-backgroundvar(--pk-toast-bg-color)
--pk-toast-padding-svar(--pk-padding-s)
--pk-toast-padding-lvar(--pk-padding-l)
--pk-toast-border-radiusvar(--pk-radius-m)
--pk-toast-font-sizevar(--pk-font-size-xs)
Last Updated:
Contributors: yranky
Prev
Popup 弹出层