iIm пытается удалить элемент из Firebase, и у меня возникает странная проблема. Вот функция:Удаление неверного идентификатора на Firebase
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == .delete {
//delete item from array
itemArray.remove(at: indexPath.row)
// delete from database
var itemRef = FIRDatabaseReference()
ref = FIRDatabase.database().reference()
let userID = FIRAuth.auth()?.currentUser?.uid
let idDel = itemArray[indexPath.row].itemID
itemRef = self.ref.child(userID!).child("ShoppingCart").child(idDel!)
itemRef.removeValue()
//delete row
cartTable.deleteRows(at:[indexPath], with: .fade)
}
}
Проблема заключается в том, что каждый раз, когда я удалить элемент следующий будет удален в Firebase, не один я выбрал. Когда я добираюсь до конца массива, я получаю ошибку «index out the range». Я предполагаю, что это связано с позициями indexpath/array?
Заранее благодарен!
Можете ли вы выйти на indexPath на каждом этапе, чтобы увидеть, где это происходит не так? – brandonscript