toast.uvue 4.2 KB
Newer Older
Y
yurj26 已提交
1 2 3 4 5
<template>
    <view>
        <page-head :title="title"></page-head>
        <view class="uni-padding-wrap">
            <view class="uni-btn-v">
杜庆泉's avatar
杜庆泉 已提交
6 7 8 9
                <button class="uni-btn-v" type="default" @tap="toast1Tap">点击弹出默认toast</button>
				<button class="uni-btn-v" type="default" @tap="toastTapIconError">点击弹出设置icon的toast</button>
                <button class="uni-btn-v" type="default" @tap="toast2Tap">点击弹出设置duration的toast</button>
                <button class="uni-btn-v" type="default" @tap="toast3Tap">点击弹出显示loading的toast</button>
Y
yurj26 已提交
10
                <!-- #ifndef MP-ALIPAY -->
杜庆泉's avatar
杜庆泉 已提交
11
                <button class="uni-btn-v" type="default" @tap="toast4Tap">点击弹出显示自定义图片的toast</button>
Y
yurj26 已提交
12 13
                <!-- #endif -->
                <!-- #ifdef APP-PLUS -->
杜庆泉's avatar
杜庆泉 已提交
14
                <button class="uni-btn-v" type="default" @tap="toast5Tap">点击显示无图标的居底toast</button>
Y
yurj26 已提交
15
                <!-- #endif -->
杜庆泉's avatar
杜庆泉 已提交
16
                <button class="uni-btn-v" type="default" @tap="hideToast">点击隐藏toast</button>
Y
yurj26 已提交
17
            </view>
杜庆泉's avatar
杜庆泉 已提交
18
			<text>{{exeRet}}</text>
Y
yurj26 已提交
19 20 21
        </view>
    </view>
</template>
Y
yurj26 已提交
22
<script lang="uts">
Y
yurj26 已提交
23 24 25 26
    export default {
        data() {
            return {
                title: 'toast',
杜庆泉's avatar
杜庆泉 已提交
27
				exeRet:'',
Y
yurj26 已提交
28 29 30 31 32 33 34 35 36 37 38
                _showTimer: 0
            }
        },
        // #ifdef MP-ALIPAY
        onUnload() {
            clearTimeout(this._showTimer);
        },
        // #endif
        methods: {
            toast1Tap: function () {
                uni.showToast({
杜庆泉's avatar
杜庆泉 已提交
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
                    title: "默认",
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
                })
            },
			toastTapIconError: function () {
                uni.showToast({
                    title: "默认",
					icon:'error',
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
Y
yurj26 已提交
58 59 60 61 62
                })
            },
            toast2Tap: function () {
                uni.showToast({
                    title: "duration 3000",
杜庆泉's avatar
杜庆泉 已提交
63 64 65 66 67 68 69
                    duration: 3000,
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
Y
yurj26 已提交
70 71 72 73 74 75
                })
            },
            toast3Tap: function () {
                uni.showToast({
                    title: "loading",
                    icon: "loading",
杜庆泉's avatar
杜庆泉 已提交
76 77 78 79 80 81 82
                    duration: 5000,
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
Y
yurj26 已提交
83 84 85 86 87 88 89 90 91 92 93 94 95 96
                })
                // #ifdef MP-ALIPAY
                this._showTimer = setTimeout(() => {
                    // icon 是 loading 时,showToast 实际执行的是 showLoading
                    my.hideLoading()
                    // 执行完所有代码再清除定时器
                    clearTimeout(this._showTimer);
                }, 3000)
                // #endif

            },
            toast4Tap: function () {
                uni.showToast({
                    title: "logo",
杜庆泉's avatar
杜庆泉 已提交
97 98 99 100 101 102 103
                    image: "/static/uni.png",
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
Y
yurj26 已提交
104 105 106 107 108 109
                })
            },
            // #ifdef APP-PLUS
            toast5Tap: function () {
                uni.showToast({
                    title: "显示一段轻提示",
杜庆泉's avatar
杜庆泉 已提交
110 111 112 113 114 115 116
                    position: 'bottom',
					success:function(res){
						this.exeRet = "success:" + JSON.stringify(res) + new Date()
					},
					fail:function(res){
						this.exeRet = "fail:" + JSON.stringify(res)
					},
Y
yurj26 已提交
117 118 119 120 121 122 123 124 125
                })
            },
            // #endif
            hideToast: function () {
                uni.hideToast()
            }
        }
    }
</script>