我想知道如何使用angularfire2来了解云firestore数据库是否可访问并且可以获取集合值?
这里的目标是如果失败,我将改为获取本地数据。
我有类似的东西
this.afStore.collection('messages').valueChanges().subscribe(
(messages: any[]) => {
// DO STUFF
});
谢谢
答案 0 :(得分:3)
Firestore并未公开“在线”或“离线”的概念。在内部,SDK管理连接,并无限期重试,直到可以重新获得连接。 SDK通常会假定您的应用程序处于在线状态,并且会出现短暂的中断。
在重新获得连接之前,将使用本地持久性缓存来满足读取和写入操作。不能来自缓存的读取将等待10秒钟,以等待服务器的响应(除非您的连接速度很慢)。涉及事务的写入不能写入本地缓存-必须在完全在线的情况下执行。
您可以尝试检查自己是否存在某种连通性,但这不能保证SDK可以立即与服务端建立连接。