如何使用 javascript 将 API 数据转换为 react-native 中的部分列表数据
Posted
技术标签:
【中文标题】如何使用 javascript 将 API 数据转换为 react-native 中的部分列表数据【英文标题】:How to convert API data to section list data in react-native using javascript 【发布时间】:2020-10-04 11:29:05 【问题描述】:我想将 API 数据转换为 react-native 中的部分列表格式。这样我就可以在部分列表中显示我的数据。以下是我的 API 数据
data:[
id:'1',
fullname: "seela",
inspection_date: "2020-06-10T04:45:32Z",
issues: 1,
response:
shift_name:'Day'
,
id:'2',
fullname: "Raju vijayan",
inspection_date: "2020-06-9T04:45:32Z",
issues: 3,
response:
shift_name:'Afternoon'
,
id:'3',
fullname: "Pratap P",
inspection_date: "2020-06-8T04:45:32Z",
issues: 2,
response:
shift_name:'Afternoon'
]
我想转换为如下的部分列表格式。
data:[
shift_name:'Day',
data:[
id:'1',
fullname: "seela",
inspection_date: "2020-06-10T04:45:32Z",
issues: 1,
response:
shift_name:'Day'
]
,
shift_name:'Afternoon',
data:[
id:'2',
fullname: "Raju vijayan",
inspection_date: "2020-06-9T04:45:32Z",
issues: 3,
response:
shift_name:'Afternoon'
,
id:'3',
fullname: "Pratap P",
inspection_date: "2020-06-8T04:45:32Z",
issues: 2,
response:
shift_name:'Afternoon'
]
]
如何使用 array.map 或任何其他运算符将 API 数据转换为 react-native 中的部分列表
【问题讨论】:
【参考方案1】:你可以使用如下的 reducer 函数。
const data = [
id: '1',
fullname: "seela",
inspection_date: "2020-06-10T04:45:32Z",
issues: 1,
response:
shift_name: 'Day'
,
id: '2',
fullname: "Raju vijayan",
inspection_date: "2020-06-9T04:45:32Z",
issues: 3,
response:
shift_name: 'Afternoon'
,
id: '3',
fullname: "Pratap P",
inspection_date: "2020-06-8T04:45:32Z",
issues: 2,
response:
shift_name: 'Afternoon'
];
const reducer = (acc, cur) =>
const item = acc.find((x) => x.shift_name === cur.response.shift_name);
if (item)
item.data.push(cur);
else
acc.push(
shift_name: cur.response.shift_name,
data: [cur]
);
return acc;
;
console.log(data.reduce(reducer, []))
【讨论】:
以上是关于如何使用 javascript 将 API 数据转换为 react-native 中的部分列表数据的主要内容,如果未能解决你的问题,请参考以下文章
(转)如何在JavaScript与ActiveX之间传递数据2
(转)如何在JavaScript与ActiveX之间传递数据3
[转]MBTiles 离线地图演示 - 基于 Google Maps JavaScript API v3 + SQLite
如何将两个参数传递给 Javascript/NodeJS 中的 API“获取”请求
如何使用 fetch 将 FormData 从 javascript 发送到 ASP.NET Core 2.1 Web API