Ionic 3确认弹出从列表中删除项目

时间:2018-01-08 03:29:50

标签: popup ionic3 alert

我有一个应用,用户可以删除其他用户。当用户单击删除按钮时,会出现一个弹出窗口,询问用户是否确定要采取此操作。当用户点击确认时,我希望删除该用户。 我之前通过在按钮上放置一个remove方法实现了这一点,如下所示:

<button ion-button (click)="remove(i);">Delete</button>

在我的.ts中我有这段代码:

this.items = [
              {user: 'UserA'},
              {user: 'UserB'}
          ];

  remove(no) {
    (this.items).splice(no, 1);
  }

我的问题是,现在,当用户点击按钮时,方法顶部打开弹出窗口被调用:

<button ion-button (click)="showConfirmAlert();">Delete</button>

我现在不确定如何从列表中删除该项目。

showConfirmAlert() {
        let alert = this.alertCtrl.create({
            title: 'Confirm delete user',
            message: 'Are you sure you want to permanently delete this user?',
            buttons: [
                {
                    text: 'No',
                    handler: () => {
                        console.log('Cancel clicked');
                    }
                },
                {
                    text: 'Yes',
                    handler: () => {

                    }
                }
            ]
        })
      }

我是否需要在showConfirmAlert方法中编写单独的remove函数?我该怎么做呢?对不起,这里很新,任何帮助都会非常感谢!

1 个答案:

答案 0 :(得分:3)

在你的html文件中:

<button ion-button (click)="showConfirmAlert(i);">Delete</button>

在你的ts文件中:

showConfirmAlert(i) {
    let alert = this.alertCtrl.create({
        title: 'Confirm delete user',
        message: 'Are you sure you want to permanently delete this user?',
        buttons: [
            {
                text: 'No',
                handler: () => {
                    console.log('Cancel clicked');
                }
            },
            {
                text: 'Yes',
                handler: () => {
                   this.items.splice(i,1);
                }
            }
        ]
    })
  }