Расположение моих данных в Firestore:
Пользовательские документы содержат массив ссылок id на документы чата.
Пример:
collections
/users
'CQATa3f3d2XmBskmmt8hmCJhzcJ2'
name: '...'
email: '...'
chats: ["RuUKEwsGtR9QylicdgJW", "JlzcIfkZ1KzeXClhJvOE"]
/chats
...
Для текущего пользователя я хочу получить объект чата, связанный с каждым элементом в его массиве чата. Эти данные должны go в firestore.ordered, чтобы я мог предоставить их в FlatList, но firestore.ordered.chats всегда неопределен, даже если firestore.data.chats содержит правильные данные.
I'm не уверен, что это проблема, связанная с порядком, в котором я вызываю connect и firestoreConnect, или с тем, как я использую заполнения, или с чем-то еще.
... Component ...
const populates = [
{ child: 'chats', root: 'chats' }
]
const mapStateToProps = (state, props) => {
return {
auth: state.firebase.auth,
user: populate(state.firestore, 'users', populates),
chats: state.firestore.ordered.chats,
}
}
// ---- TEST ----
export default compose(
connect(mapStateToProps, mapDispatchToProps),
firestoreConnect((props) => {
return [ { collection: 'users', doc: props.auth.uid, populates } ]
}),
)(Main)
Результат регистрации состояния внутри mapStateToProps: