作者:gauss | 来源:互联网 | 2023-05-16 22:35
Iamtryingtoloadalistfromfirebasetoadropdownmenu.Imgetting:我正在尝试从firebase加载一个列表到下拉菜单。
I am trying to load a list from firebase to a dropdown menu. I'm getting:
我正在尝试从firebase加载一个列表到下拉菜单。我越来越:
TypeError: undefined is not an object (evaluating 'this.state.dataSource.map')
TypeError:undefined不是对象(评估'this.state.dataSource.map')
Please advise what am I doing wrong
请告诉我我做错了什么
export default class GenderDropdownComponent extends React.Component {
constructor(props) {
super(props);
this.state = {
dataSource: []
};
}
async get_firebase_list(){
var items = [];
firebase.database().ref('lists/gender').on('value', function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var childKey = childSnapshot.key;
var childData = childSnapshot.val();
items.push(childData);
});
console.log("items_load: " + items);
return items;
});
}
async componentWillMount(){
this.setState({
dataSource : await this.get_firebase_list()
})
console.log("items: " + this.state.dataSource);
}
render() {
return (
this.setState({gender: itemValue})}>
{this.state.dataSource.map((item, index) => {
return ()
})}
);
}
}
1 个解决方案