我不确定如何完成以下任务。我有组件,这是我在SharePoint中的自定义视图。我有一项服务,该服务负责从customList中检索某些项目(主题)。提到的列表中有一个包含一些ID的字段。我需要遍历所有检索到的项,并开始根据ID和其他条件检索更多数据。我是第一次使用React钩子,我想知道是否可以使用定制钩子来实现,或者什么是解决此问题的正确方法。
目前,我所提供的服务可以满足要求。
{
const [listData, setListData] = useState([]);
async function fetchListData() {
const response:= await ListService.getItems();
const mappedData= response ? response.map(it=> new Item(it)) : [];
const updatedData= await configurationService.setItemActionDetails(mappedData);
setListData(itemData);
useEffect(() => {
fetchListData();
}, [])
}
我的服务设置如下:
{
for (const item of itemData) {
const allActions = await my listService - the pnp request is further down
const mostRecentAction = new Action(allActions.sort((a, b) => {
return a.dueDate <a.dueDate ? -1
: a.dueDate > a.dueDate ? 1
: 0;
})[0]);
item.title= closestAction.title;
item.actionDueDate= closestAction.dueDate;
item.actionAssignee= closestAction.assignee;
item.actionOverdueDays= I have method that calculate overdue days
}
return itemData;
}
```
My listService below to get actions:
```
{
return sp.web.lists
.getById("ListId")
.items
.select("specificColumns)
.expand("specificColumn")
.filter(filterIds)
.get();
}
```
UPDATED:
I have improved the performance with PnP-JS Batching.