[英]react native flatlist hooks - render item with array of object
i have the data api like this, want to display it on flatlist react native hooks.我有像这样的数据 api ,想在 flatlist react native hooks 上显示它。 for name, period, and filename.
用于名称、句点和文件名。 how to do it
怎么做
"total": "2",
"data": [
{
"id": "1",
"name": "john",
"data_cat": [
{
"id_data_cat": "142",
"date":"2021-04-28",
"period":"monthly",
"files": [
{
"id_file": "207",
"filename": "document1.pdf",
"id_data_cat": "142",
}
],
}
]
},
{
"id": "2",
"name": "kate",
"data_cat": [
{
"id_data_cat": "143",
"date":"2021-04-28",
"period":"annual"
"files": [
{
"id_file": "208",
"filename": "document2.pdf",
"id_data_cat": "143",
}
],
}
]
},
]
for example i want it will appear like this:例如我希望它看起来像这样:
but, currently I can only display one data (just name) like this, below is the basic code when retrieving the flatlist data for me但是,目前我只能像这样显示一个数据(只是名称),下面是为我检索平面列表数据时的基本代码
const cData = () => {
const[filterData,setFilterData]=useState([])
useEffect(() => {
GetData();
}, []);
const GetData = () => {
// fetching API
// ...
.then((response) => response.json())
.then((responseJson) => {
setFilterData(responseJson)
// ...
};
const ItemView=({item}) => {
return (
<Text style={styles.itemStyle}>
Name: {item.name.toUpperCase()}
</Text>
)
}
return (
<View style={{padding:5}}>
<FlatList
data={filterData.data}
keyExtractor={(item,index)=>index.toString()}
renderItem={ItemView}
/>
</View>
)
}
Write your cData.js
like this像这样写你的
cData.js
const cData = () => {
const [filterData, setFilterData] = useState([]);
useEffect(() => {
GetData();
}, []);
const GetData = async () => {
// fetching API
// ...
// .then((response) => response.json())
// .then((responseJson) => {
// setFilterData(responseJson)
// ...
};
const ItemView = ({ item }) => {
return (
<Text style={styles.itemStyle}>Name: {item.name.toUpperCase()}</Text>
);
};
return (
<View style={{ padding: 5 }}>
<FlatList
data={filterData.data}
keyExtractor={(item, index) => index.toString()}
renderItem={ItemView}
/>
</View>
);
};
export default cData;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.