Я новичок в firebase и React. Я успешно получены пользовательские данные из firebase со следующим кодом:Настройка состояния нескольких переменных сразу из базы
firebase.auth().onAuthStateChanged(firebaseUser => {
if(firebaseUser) {
const dbRoot = firebase.database().ref().child('users').child(firebaseUser.uid);
const name = dbRoot.child('name');
const bio = dbRoot.child('bio');
name.on('value', snap => {
this.setState({
name: snap.val()
});
});
bio.on('value', snap => {
this.setState({
bio: snap.val()
});
});
} else {
console.log("not logged in");
}
});
}
Это работает, но я ищу лучший способ SetState всех значений (имя, био, и т.д.), не создавая несколько блоков setState, подобных сверху, и я еще не обнаружил его. У меня есть много данных, чтобы получить от пользователя, так что код станет более громоздким. Я хотел бы сделать что-то вроде:
this.setState({
name: snap.name.val(),
bio: snap.bio.val(),
email: snap.email.val()
});
Или что-то еще самое лучшее. Может ли кто-нибудь указать мне в правильном направлении? Заранее спасибо.
Да, идеально, именно то, что я искал, чтобы сделать, и это работает. Спасибо! –