无法将“String”类型的值转换为预期的参数类型“[Any]”

时间:2021-03-21 21:25:40

标签: ios arrays swift database uitableview

我的 cellForRowAt 方法中出现以下代码错误:

self.db.collection("myCollection").document(self.currentUser!).updateData(["myArray":FieldValue.arrayRemove(myArray![indexPath.row])]).

Cannot convert value of type 'String' to expected argument type '[Any]' 错误发生在 myArray![indexPath.row]

我的函数旨在从 String 中删除 myArray 值,因此我不确定如何解决此错误。

感谢任何帮助/指导!

1 个答案:

答案 0 :(得分:1)

arrayRemove 需要删除您想要使用的一组值:

.arrayRemove([myArray![indexPath.row]])

查看添加的括号

(https://firebase.google.com/docs/firestore/manage-data/add-data#update_elements_in_an_array)

话虽如此,请注意您使用 ! 强制解包多个内容 -- 请注意,如果这些值之一是 nil,您的程序将崩溃。