在 React Native 中获取有关未定义的错误不是对象
2019-06-13
116
我从 Rest
api
获取数据列表,并且我在选择器(下拉微调器)中设置该数据。但是它不起作用并显示错误,请检查我的代码并提出一些解决方案。
constructor(props)
{
super(props);
this.state = {
isLoading: true,
PickerValueHolder : ''
}
}
componentDidMount() {
this.FreelancerLevelSpinner();
}
FreelancerLevelSpinner = async ()=>{
return fetch('taxonomies/get_list?list=freelancer_level')
.then((response) => response.json())
.then((responseJson) => {
this.setState({
freelancerLevel: responseJson
}, function() {
// In this block you can do something with new state.
});
})
.catch((error) => {
console.error(error);
});
}
这里我在选择器中设置数据...
<Picker
selectedValue={this.state.PickerValueHolder}
onValueChange={(itemValue, itemIndex) => this.setState({PickerValueHolder: itemValue})} >
{ this.state.freelancerLevel.map((item, key)=>(
<Picker.Item label={item.title} value={item.value} key={key} />)
)}
</Picker>
它显示此错误...
TypeError: TypeError: undefined is not an object (evaluating 'this.state.freelancerLevel.map')
1个回答
您需要将
freelancerLevel
添加到状态初始化中:
this.state = {
isLoading: true,
PickerValueHolder : '',
freelancerLevel: []
}
Mykybo
2019-06-13