首页 > 解决方案 > 带有嵌套 ForEach 或 For in 的 Swift

问题描述

致命错误:每个布局项只能出现一次:文件 SwiftUI,第 0 行 2021-04-20 19:17:54.685999-0500 PetGram[17828:1053156] 致命错误:每个布局项只能出现一次:文件 SwiftUI,第 0 行

我想不通。它只会在第二个用户关注时崩溃。重新启动后,您可以关注和取消关注,它工作正常。如果您在低于 2 之前取消关注并关注另一个,它会再次崩溃。任何帮助都会很棒。

func loadFilteredPosts() {
        guard let uid = Auth.auth().currentUser?.uid else { return }
        FB.USER_COLLECTION.whereField(FB.USER_FOLLOWERS, arrayContains: uid)
            .addSnapshotListener { (snapshot, error) in
                if let error = error {
                    print("DEBUG: Error getting followers from user docs \(error.localizedDescription)")
                } else {
                    if let snapshot = snapshot {
                        self.filteredUsers = snapshot.documents.compactMap { document in
                            try? document.data(as: User.self)
                        }
                    }
                    self.posts.forEach { post in
                        self.filteredUsers.forEach { user in
                            if user.uid == post.ownerUid {
                                self.filteredPosts.append(post)
                            }
                        }
                    }
                }
            }
    }

标签: firebasegoogle-cloud-firestoreswiftuinested-loops

解决方案


推荐阅读