【发布时间】:2018-08-18 04:39:58
【问题描述】:
我正在尝试使用react-native-sectioned-multi-select,并且我知道该数组上必须有名称和 ID。所以我试图从 url 中获取我的数据并将其存储为数组,但下拉列表除了加载圆圈之外什么都不会显示。
import React, { Component } from 'react';
import { View } from 'react-native';
import { Container, Body, Header, Title, Content, List, ListItem, Text, Left, Right, Icon, Footer, FooterTab, Button} from 'native-base';
import SectionedMultiSelect from 'react-native-sectioned-multi-select';
var items = [];
class Home extends Component {
constructor(){
super();
this.state = {
data: [],
selectedItems: []
};
}
getData(){
return fetch('https://test.com/php.php')
.then((response) => response.json())
.then((responseJson) => {
console.log(JSON.stringify(responseJson.result));
this.setState({data:responseJson.result});
//alert(responseJson.result[1].name);
//return responseJson.result[1].name;
})
.catch((error) => {
console.error(error);
});
}
componentDidMount(){
this.getData();
this.state.data.map((cardData, i) =>{
items.push({
name: cardData.name,
id: cardData.ver
});
});
}
onSelectedItemsChange = selectedItems => {
this.setState({ selectedItems });
};
render() {
return (
<View>
<SectionedMultiSelect
items={items}
uniqueKey='id'
selectText='Choose some things...'
showDropDowns={false}
readOnlyHeadings={false}
onSelectedItemsChange={this.onSelectedItemsChange}
selectedItems={this.state.selectedItems}
/>
</View>
);
}
}
这是我上面的代码,我不确定如何将数组正确推送到我的新项目数组中以使列表正常工作。
数据格式应该只有
result [{
name: xxxxxx,
ver: xxxxx
}]
【问题讨论】:
-
可能有人可以帮助我吗?
标签: javascript reactjs react-native react-navigation