FirebaseConnect HOC возвращает неопределенное значение для «коллекций».Однако, если я удаляю параметры 'where', он возвращает данные.
function mapStateToProps(state) {
return {
contestants: state.firestore.ordered['ContestantsList-contestants'],
votes: state.firestore.ordered['ContestantsList-votes'],
currentUserId: state.firebase.auth.uid,
}
}
export default compose(
firestoreConnect(ownProps => {
// added this console log to verify that ownProps.contestId exists.
console.log('ownProps', {...ownProps})
return ([
{
collection: 'votes',
where: [
['authorId', '==', ownProps.currentUserId],
['contestId', '==', ownProps.contestId],
],
storeAs: 'ContestantsList-votes'
},
{
collection: 'contestants',
orderBy: ['createdAt', 'asc'],
where: ['contestId', '==', ownProps.contestId], // <---- If I remove this line, it works
storeAs: 'ContestantsList-contestants',
},
])
}),
connect(mapStateToProps),
)(ContestantsList);
В приведенном выше коде votes
prop - это массив данных, как и ожидалось.contestants
опора возвращается как неопределенная.Я понятия не имею, почему это произошло.Я надеюсь, что это действительно очевидно для опытного пользователя Firestore.Я новичок в Firebase и Firestore.