В моем приложении React Native я пытаюсь распечатать данные из моей базы данных Firebase, которые имеют определенный ключ (переданный из другого компонента).Я использовал похожий код, который использовал для получения всех данных базы данных, но получаю пустое пространство.
var data = []
var currentUser;
class FavPlant extends React.Component {
constructor(props){
super(props)
this.ds = new ListView.DataSource({rowHasChanged:(r1,r2) => r1 !==r2})
this.state = {
listViewData : data
}
}
componentDidMount(){
const { navigation } = this.props;
const keyPlant = navigation.getParam('keyPlant');
firebase.auth().onAuthStateChanged((user) => {
if (user != null) {
var that = this
firebase.database().ref(user.uid).child('plantList').equalTo('keyPlant').on('child_added',function(data){
var newData = [...that.state.listViewData]
newData.push(data)
that.setState({ listViewData: newData})
});
}
})
}
render(){ return(
<Container>
<Content>
<ListView
enableEmptySections
dataSource = {this.ds.cloneWithRows(this.state.listViewData)}
renderRow={data =>
<Text>{data.val().bloom}</Text>
}/>
</Content>
</Container>
)}