首页 > 解决方案 > 当我单击一个按钮时,它会显示许多警报、堆栈和重叠

问题描述

我想同步任务,当我单击侧面菜单上的同步时,它将调用 data.service.ts 中的函数并显示警报。

私人异步呈现警报(消息){

    const alert = await this.alertCtrl.create({
        message: message,
        buttons: ['OK']
    });

    await alert.present();
  }

这是代码,我想在 data.service.ts 上同步任务

sync_task()
    {

    let body = new FormData();

    body.append('access_token', localStorage.getItem('access_token'));

    this.apiService.syncDataFromForm('/tasks', body)
    .then((result: any) => {

    if(result.data)
    {
    let form_data = result.data;
    console.log("task synced");
    console.log(form_data);

    this.deleteTask();
    this.deleteTaskList();
    this.deleteBuildingDetails();

    console.log(form_data);

    for(let data of result.data) {

    var submission_id = data.submission_id;
    var project_name = data.project_name;
    var status = '0';
    var building_submission_id = data.building.submission_id;
    var building_data = JSON.stringify(data.building.data);

    console.log("building_data");
    console.log(building_data);

    this.insertTask(submission_id, project_name, status);

    for(let formData of data.data)
    {
    console.log("all form data");
    console.log(formData);

    var form_id = formData.form_id;
    var data_id = formData.id;
    var form_name = formData.form_name;
    var submission_group = formData.submission_group;

    console.log("form_id");
    console.log(formData.form_id);

    this.insertTaskList(submission_id, data_id, form_id, form_name,submission_group);
    }

    this.insertBuildingDetails(submission_id, building_submission_id, building_data);
    }

    this.authState.next(false);
    this.presentAlert('Successfully synced!');
    this.menuCtrl.close();
    this.router.navigateByUrl('home');
    } else {
    this.presentAlert('Uh oh!, sync failed! ');
    }

    });
    }

侧面菜单中的此代码

sync_task()
  {

    this.data.sync_task();
  }

我不知道为什么警报显示太多次。警报堆积起来,直到背景变暗。我需要点击确定太多次才能清除它。

标签: ionic-frameworkionic4

解决方案


推荐阅读