uniapp 用view组件作为按钮 防止重复点击 我的实现方法

uniapp 用view组件作为按钮 防止重复点击 我的实现方法

用两个相同的view,未点击时,显示第一个隐藏第二个;点击后,隐藏第一个显示第二个,任务处理完成后恢复初始状态

1、先在<template>中创建两个相同的view

        <view class="btnbox" @click.stop="requestPayment()" v-show="gopay">
            <text class="btntxt">去支付</text>
        </view>
        <view class="btnbox" v-show="!gopay">
            <text class="btntxt">支付中 请稍后。。。</text>
        </view>

2、在<script>中定义gopay变量并赋初值

    export default {
        data() {
            return {
                gopay:true,//支付按钮显示开关,避免重复点击
            }
        },
    }

3、在requestPayment()开始时改变gopay=false,处理完成后改变gopay=true

复制代码
            async requestPayment() {
                this.gopay=false;//隐藏支付按钮
                //TODO
                }
                uni.requestPayment({
                    
                    },
                    fail: (e) => {
                        
                    },
                    complete: () => {
                        this.gopay=true;//支付完成后打开支付开关
                    }
                })
            },
复制代码

4、<style>中

复制代码
    .btnbox{
        width: 98%;
        height: 7vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        background-color: #66CDAA;
    }
复制代码

 

posted @   中国结  阅读(7339)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示