我每次都使用onSnapshot来获取文档列表并进行收集更新
firebase.firestore().collection("properties").where('uid', '==', user.uid).onSnapshot(function(results) {
...
})
但是根据documentation:
“”第一个查询快照包含与该查询匹配的所有现有文档的已添加事件。这是因为您将获得一组更改,使您的查询快照具有当前查询的初始状态。这使您可以例如,直接从您在第一个查询快照中收到的更改中填充用户界面,而无需添加用于处理初始状态的特殊逻辑。”
我知道最初它会返回一个快照,其中包含集合中的当前文档,所以这意味着当我的应用启动时,它应该返回文档列表
在我拥有的组件中(_getProperties具有onSnapshot代码):
componentDidMount(){
this.props.navigation.addListener(
'willFocus',
() => {
this._getProperties();
}
);
}
如果我添加或更新文档,它会很好地工作,但是当我第一次进入应用程序时却不能。所以我想知道我是否也应该使用get()还是缺少什么?