在我的chatviewcontroller中,当一个用户向另一个用户发送消息时,它将异步重新加载以获取已发送消息或接收消息。我想清除缓存,在用户发送消息之后,然后重新加载以获取新消息。我想要清除缓存的原因是因为上一条消息将与我的新消息混淆,如图所示。如果我关闭我的聊天并重新打开,一切正常,这意味着其缓存问题。 Image to View
@IBAction func sendTextMessage(_ sender: Any) {
chats.removeAll()
self.sendDataToDatabase(message: messageText.text!)
messageText.text = nil
//Clear Cache here (How to clear cache of a viewcontroller?)
loadPosts()
loadPostsReceivedMessage()
delayCompletionHandler {
self.collectionView.reloadData()
}
}
答案 0 :(得分:0)
您可以使用observeEventOfType
来保持数据同步,并在后端中任何与您所观察的内容有关的数据更改时立即执行。
或者,您仍然可以使用observeSingleEventOfType
,它不会监听后端的更改,但是每次您要刷新数据时都可以调用ref.keepSynced(true)
。