我试图从第一个引用中获取键,将其保存为state并在第二个引用中使用它,但是失败了,我无法在第二个查询中访问this.state.commKeys。长话短说,我需要从第一个查询中获取键并将其用于第二个查询中。
componentDidMount() {
firebase.database().ref(`authenticatedUsers/${this.currentUserID}/communities`).on('value', snap => {
var commKeys = []
snap.forEach(child => {
commKeys.push(child.key)
})
this.setState({ commKeys })
})
firebase.database().ref(`communities`).on('value', snap => {
var communities = []
var keys = this.state.commKeys
snap.forEach(child => {
if (keys.includes(child.key))
communities.push({
name: child.val().name,
description: child.val().description,
image: child.val().avatar,
cover: child.val().cover,
key: child.key
})
})
this.setState({ communities })
})
}