# #reactjs #firebase #native
Вопрос:
У меня есть некоторые данные на firebase, относящиеся к каждому пользователю (вес, рост и т. Д.), Я распечатал их и могу правильно видеть их на экранах, я также создал метод их изменения, и он работает, когда я нажимаю кнопку, я вижу, как они меняются на firebase, но затем они не меняются на моих экранах, ни если я обновляю или пытаюсь показать их на других экранах.
вот как я их меняю, ввод-это значение текстового ввода
const editHeight = async() => {
await db.collection("utenti")
.doc(firebase.auth().currentUser.uid)
.update({
height: input,
})
.catch((error) => alert(error));
Keyboard.dismiss();
}
Я импортировал пользовательский текст
const [user, setUser] =useContext(UserContext)
Вот это и есть:
import React, {useState, useContext, createContext} from 'react'
const UserContext = createContext([{}, () => {}])
const UserProvider = (props) => {
const [state, setState] = useState({
username: "",
email: "",
uid:"",
isLoggedIn: true,
profilePhotoUrl: "default",
weight: "0",
height: "0",
chest: "0",
waist: "0",
leftbicep: "0",
rightbicep: "0",
leftforearm: "0",
rightforearm: "0",
leftleg: "0",
rightleg: "0",
rightcalf: "0",
leftcalf: "0",
});
return <UserContext.Provider value={[state, setState]}>{props.children}</UserContext.Provider>
};
export {UserContext, UserProvider};
Когда я пишу 70 на входе и нажимаю кнопку, я вижу, что значение меняется с 0 на 70 на firebase, но я вижу значение, которое я показываю как
{user.weight}
все еще 0.
И если я открою экран своего профиля, на котором вы увидите адрес электронной почты и имя пользователя, после изменения веса данные исчезнут, и я увижу их пустыми