Я пытаюсь отправить действие со значением из mapStateToProps.Ошибка говорит:
FirebaseError: функция DocumentReference.update () вызвана с недопустимыми данными.Неподдерживаемое значение поля: не определено (найдено в поле xp)
Настройка в основном файле:
componentWillReceiveProps(){
this.props.updateInLobby({
userid: this.props.auth,
xp: this.props.user.xp,
lobby: this.props.match.params.id,
}
...
const mapStateToProps = (state, ownProps) =>{
return{
user: state.firebase.profile,
auth: state.firebase.auth.uid,
}
}
const mapDispatchToProps = (dispatch) =>{
return{
updateInLobby: (data) => {dispatch(updateInlobby(data))},
}
}
export default compose(
connect(mapStateToProps, mapDispatchToProps),
firestoreConnect((props)=>{
return[
{collection: "lobby@"+props.match.params.id}]
})
)(RootLobby);
Файл действий отправки:
export const updateInlobby = (data) =>{
return(dispatch, getState, {getFirestore}) =>{
const firestore = getFirestore();
firestore.collection("lobby@"+data.lobby).doc(data.userid).update({
xp: data.xp
})
}
Почему идентификатор пользователя и лобби, кажется, определяются как работающая ссылка на документ, но xp не определен?