gpt4 book ai didi

javascript - 如何一次而不是重复触发警报/吞咽功能?

转载 作者:行者123 更新时间:2023-11-29 16:30:45 25 4
gpt4 key购买 nike

我是 Angular 新手。

我有一个应用程序,其中有两个变量指示金融交易的状态。变量是:tab1TrxMessage 存储任何消息tab1TrxStatus 指示事务状态为:Failed,< strong>成功或待定。当交易失败时,我希望用户收到类似这样的 swal 警报/通知:

swal({
title:'Error!',
text: 'Warning... Transaction failed!',
type: 'error',
confirmButtonText: 'Ok',
confirmButtonColor: '#ff754f'
});

目前,我的代码如下所示:

../component.html

<div class="sign-btn text-center">
<a class="btn btn-lg text-white">
<span *ngIf="tab1TrxMessage">{{tab1TrxMessage}}</span>
<span *ngIf="!tab1TrxMessage && tab1TrxStatus != 'Success'">Failed</span>
<span *ngIf="transactionFailed()">Failed</span>
</a>
</div>

特别注意 transactionFailed() 函数...

../component.ts

public transactionFailed() {

if(this.tab1TrxMessage == 'Failed: Cancelled by User' && this.tab1TrxStatus != 'Success') {

console.log("You are in transactionFailed!")

swal({
title:'Error!',
text: 'Warning... Transaction failed!',
type: 'error',
confirmButtonText: 'Ok',
confirmButtonColor: '#ff754f'
});

return true;
}

return false;
}

上面的代码,当交易失败时会产生:You are in transactionFailed! multiples times in the browser console...

console print out

...swal 警报也是如此,Warning... Transaction failed! 反复弹出。

是否有更好的方法来解决此问题,以便 swal 警报仅在每次失败的交易中显示 ONCE

期待您的帮助。

最佳答案

制作一个只运行您的代码一次的计数器。例如。

failedTransactionCntr = 0;
public transactionFailed() {

if(this.tab1TrxMessage == 'Failed: Cancelled by User' && this.tab1TrxStatus != 'Success') {

console.log("You are in transactionFailed!")
if (this.failedTransactionCntr == 0) {
swal({
title:'Error!',
text: 'Warning... Transaction failed!',
type: 'error',
confirmButtonText: 'Ok',
confirmButtonColor: '#ff754f'
});
this.failedTransactionCntr ++;
}
return true;
}

return false;
}

关于javascript - 如何一次而不是重复触发警报/吞咽功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58499243/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com