首页 文章

一次又一次重新打开相同的警报

提问于
浏览
0

我正在制作离子3应用 . 注册页面中有验证otp功能 . 当用户单击注册按钮时,将打开一个警报,其中包含取消,验证和重新发送按钮的otp输入 . 当用户点击重发按钮时我想要做的是应该打开相同的警报 . 我通过在重发按钮处理程序中复制整个警报代码来完成此操作 . 但它只是在第一次开放 . 我想在用户点击重发按钮时无限地重新打开此警报 .

以下是我的警报代码

{

let alert = this.alertCtrl.create({
    title: 'OTP Sent. Verify OTP',
    inputs: [{
        name: 'otp',
        placeholder: 'OTP',
        value: this.otp
    }, ],
    buttons: [{
            text: 'Cancel',
            role: 'cancel',
            handler: data => {
                console.log('Cancel clicked');
            }
        },
        {
            text: 'Verify',
            handler: data => {
                console.log(data.otp);
                if (this.responseData.data.otp_sent == data.otp) {
                    console.log("verfiied");
                } else {
                    // invalid login
                    return false;
                }
            }
        },
        {
            text: 'Resend',
            handler: data => {
                this.authService.postData('mobile=' + this.responseData.data.mobile, 'user/resend').then((result) => {
                    // console.log(this.otpResend);
                    let alert = this.alertCtrl.create({
                        title: 'OTP Sent. Verify OTP',
                        inputs: [{
                            name: 'otp',
                            placeholder: 'OTP',
                            value: this.otp
                        }, ],
                        buttons: [{
                                text: 'Cancel',
                                role: 'cancel',
                                handler: data => {
                                    console.log('Cancel clicked');
                                }
                            },
                            {
                                text: 'Verify',
                                handler: data => {
                                    console.log(data.otp);
                                    if (this.responseData.data.otp_sent == data.otp) {
                                        console.log("verfiied");
                                    } else {
                                        // invalid login
                                        return false;
                                    }
                                }
                            },
                            {
                                text: 'Resend',
                                handler: data => {
                                    this.authService.postData('mobile=' + this.responseData.data.mobile, 'user/resend').then((result) => {
                                        // console.log(this.otpResend);

                                    });
                                }
                            }
                        ]
                    });
                    alert.present();

                });
            }
        }
    ]
});
alert.present();
}

1 回答

  • 3

    重新发送功能

    resend(){
    
             this.authService.postData('mobile=' + this.responseData.data.mobile, 'user/resend').then((result) => {
                                    // console.log(this.otpResend);
                                    let alert1 = this.alertCtrl.create({
                                        title: 'OTP Sent. Verify OTP',
                                        inputs: [{
                                            name: 'otp',
                                            placeholder: 'OTP',
                                            value: this.otp
                                        }, ],
                                        buttons: [{
                                                text: 'Cancel',
                                                role: 'cancel',
                                                handler: data => {
                                                    console.log('Cancel clicked');
                                                }
                                            },
                                            {
                                                text: 'Verify',
                                                handler: data => {
                                                    console.log(data.otp);
                                                    if (this.responseData.data.otp_sent == data.otp) {
                                                        console.log("verfiied");
                                                    } else {
                                                        // invalid login
                                                        return false;
                                                    }
                                                }
                                            },
                                            {
                                                text: 'Resend',
                                                handler: data => {
                                                    this.authService.postData('mobile=' + this.responseData.data.mobile, 'user/resend').then((result) => {
                                                        resend();
                                                        // console.log(this.otpResend);
    
                                                    });
                                                }
                                            }
                                        ]
                                    });
                                    alert1.present();
    
        }
    

    然后打电话给它

    {
                text: 'Resend',
                handler: data =>{
                  resend();
                }
    }
    

相关问题