如何解决在线反应本地Firebase脱机写入+更新时不同步
我在一个赤裸裸的本机项目中工作,我必须使用Firebase持久性。 我使用react-native-firebase软件包执行所有请求。
当我使用react-native-firebase / firestore脱机编写然后联机时,它会与BackOffice同步。
firestore().collection(col).add(data)
当我使用react-native-firebase / firestore更新数据然后上线时,它会与BackOffice同步。
firestore().collection(col).doc(id).update(data)
但是当我脱机写入然后更新此新数据(脱机)时,当我上线时数据消失,例如未处理的请求未同步。
知道为什么吗?
谢谢
解决方法
serverTimestamp是与Firestore相关的非常复杂的主题,但要点是, serverTimestamp 值从未在客户端设置,并且始终为 null ,但是将被设置仅在服务器上。您可以通过以下方式获得此值:
public partial class CityLostObject
{
[NotMapped]
public SenderData SenderParsed
{
get => JsonConvert.DeserializeObject<SenderData>(Sender);
set => Sender = JsonConvert.SerializeObject(value);
}
public class SenderData
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
public string Phone { get; set; }
}
}
您设置的代码应为:
firebase.firestore.FieldValue.serverTimestamp()
要对此有更深入的了解,请火基地专家检查此detailed article
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。