从Firebase然后删除tableView时出现问题

时间:2017-12-17 20:49:48

标签: ios swift uitableview firebase

我使用以下函数来删除Firebase中的条目和tableView中的子条目。

问题在于,当执行此操作时,它会按预期从Firebase中删除条目但是从tableView中删除了两(2)个条目(在Firebase中删除了实际选中的条目已被删除)因为当我在viewcontrollers上来回导航时,tableView中的另一个条目会重新出现。

我不确定为什么首先会从tableView中删除两个条目!?任何人都可以建议......

func handleDeletePlayer(alertAction: UIAlertAction!) -> Void {

    if let indexPath = deletePlayerIndexPath {

        // Delete Firebase entry
        self.ref.child("\(players[indexPath.row])/\(poolID)").removeValue(completionBlock: { (error, reference) in 

            if error != nil {

                print("Failed to Delete Player: ", error!)
                //
                return

            }

            self.tableView.beginUpdates()

            self.players.remove(at: indexPath.row)

            // Note that indexPath is wrapped in an array:  [indexPath]
            self.tableView.deleteRows(at: [indexPath as IndexPath], with: .automatic)
            //
            self.deletePlayerIndexPath = nil
            //
            self.tableView.endUpdates()

        })

    }

}

0 个答案:

没有答案