【发布时间】:2018-09-25 05:52:22
【问题描述】:
从下面的代码中,我尝试让数据源返回一个字符串,但它返回未定义
constructor(props) {
super(props)
this.state = {
uuid : this.props.navigation.state.params.uuid,
facilityData: [],
dataSource : []
};
}
componentDidMount() {
facilityStore.getFacilityInfo(this.state.uuid)
.then((res) => {
this.setState({
facilityData: res.data.data
})
{this.checkparticipants()}
})
.catch((error) =>{
alert(error);
})
};
checkparticipants(){
var ds = new ListView.DataSource({rowHasChanged: (r1,r2) => r1!=r2});
this.setState({
dataSource : ds.cloneWithRows([
{invitePlaceholder : "Participant"},
{invitePlaceholder : "Participant"},
{invitePlaceholder : "Participant"},
{invitePlaceholder : "Participant"},
])
})
console.log(this.state.dataSource.invitePlaceholder)
}
我想根据列表视图的数量来渲染文本输入,但是有一个错误是:
TypeError: undefined is not an object
<ListView
dataSource = {this.state.dataSource}
renderRow={(rowData)=>
<TextInput style={styles.input}
placeholder={rowData.invitePlaceholder}
/>
}
/>
那么我应该怎么做才能使对象不从代码中未定义?
【问题讨论】: