我正在使用 update()
来设置帖子的点赞数和点赞数。目前,update()
在离线时保留数据。
我想要的 - 当用户离线时,他们不应该能够喜欢该帖子。应显示适当的网络错误消息。
问题 - update()
不会抛出网络异常,并在用户上线时将数据提交到服务器。
以下是我目前正在做的事情:
db.child(nodepath).update(fanoutObj).then((){
console.log("Data saved successfully.");
}).catch(function(error) {
console.log("Data could not be saved." + error);
});
catch
在没有互联网的情况下永远不会被调用。
问题:
我可以禁用 Firebase 离线模式并让它在没有互联网连接时在
update()
上抛出网络异常吗?或者我应该在单击按钮时单独检查网络连接吗?
最佳答案
实时数据库(和 Firestore)假设客户端通常已连接。缺乏连接被认为是暂时的问题。因此,SDK 将默默地重试连接,并且永远不会因缺乏连接而生成错误。您无法改变这种行为。
相反,您可以使用 Cloud Functions 创建一个 HTTP 端点来调用来执行数据库工作。如果无法连接,您的 HTTP 客户端将生成错误。
关于javascript - Firebase - 禁用 'offline' 模式并使 'update()' 抛出网络异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50666960/