表格视图无法快速重新加载

问题描述

我的应用程序中有一个添加收藏夹”按钮功能。当用户将商店添加到他的收藏夹时,它会转到他的个人资料。

现在表格视图可以工作了,但是当我单击“收藏夹”按钮并导航到配置文件视图控制器时,我看不到我喜欢的商店的新数据。但是当我关闭并打开该应用程序时,商店就可见了。

我希望它成为用户喜欢的东西,它将立即显示在他的个人资料中

我使用了tableView.reloadData(),但是它不起作用。我在做什么错了?

这是我的代码

  func loadData(){// i call thiss function later in the viewDidLoad()
       let userID = Auth.auth().currentUser!.uid

    
    db.collection("Favorites").whereField("usersID",isEqualTo: userID).getDocuments(){
           querySnapshot,error in
           if let error = error {
               print(error.localizedDescription)
           }else
           {
            if(querySnapshot!.isEmpty){
                //here put you didn't favorite any shops image/text
                
            }else{
               self.shops = querySnapshot!.documents.compactMap({addShop(dictionary: $0.data())})
               dispatchQueue.main.async {
                
                self.faveList.reloadData()
                print("reloaded")
                
               }
        }
           }
       }
    
   }

解决方法

创建UIViewController时,仅调用一次

viewDidLoad()。您可以尝试在viewWillAppear()方法上调用它