Хорошо.Вот как я это сделал:
Я ввел данные следующим образом:
getDataForFeed() {
var feedPosts = this;
firebase
.database()
.ref("/feedPosts/")
.limitToLast(10)
.orderByChild('sortingTime')
.on("child_added", function(data) {
var newData = [...feedPosts.state.listViewData];
newData.push(data);
feedPosts.setState({ listViewData: newData });
});
}
Я сделал отдельную функцию renderRow вместо встроенного:
renderRow(data) {
const { navigate } = this.props.navigation;
return (
<Card style={{ flex: 0 }}>
<CardItem
button
onPress={() => {
navigate("ViewPost", data.val());
}
}
bordered
>
</CardItem>
</Card>
);
}
Затем я отобразил список следующим образом:
<ListView
enableEmptySections
dataSource={this.ds.cloneWithRows(this.state.listViewData)}
renderRow={this.renderRow.bind(this)}
/>
Затем на следующей странице доступ к данным осуществляется следующим образом:
console.log(this.props.navigation.state.params, "Navigation");
Надеюсь, это поможет.Прокомментируйте, если вам нужны какие-либо разъяснения.