Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 列表加载更多属性_Reactjs_Fetch Api_Antd - Fatal编程技术网

Reactjs 列表加载更多属性

Reactjs 列表加载更多属性,reactjs,fetch-api,antd,Reactjs,Fetch Api,Antd,如何使用列表在AntD中实现loadMore道具?我已经有了限制的api。我使用的是FetchAPI,但不像AntD在示例中使用的那样 这是我的组件 <List itemLayout="horizontal" loading={isLoading} loadMore={isLoadMore} dataSource={dataSource} renderItem={(item, i) => ( <List.Item> <Skeleton

如何使用列表在AntD中实现loadMore道具?我已经有了限制的api。我使用的是FetchAPI,但不像AntD在示例中使用的那样

这是我的组件

<List
 itemLayout="horizontal"
 loading={isLoading}
 loadMore={isLoadMore}
 dataSource={dataSource}
 renderItem={(item, i) => (
  <List.Item>
    <Skeleton
      avatar={false}
      title={false}
      loading={isSkeleton}
      active
    >
    <List.Item.Meta title={item.desc} description={item.type} /> 
      <div>
        content here
      </div>
     </Skeleton>
   </List.Item>
  )} 
/>
(
满足于此
)} 
/>
我从另一个文件中调用它

const CalendarManagement = () => {
  const holidayListDay = [];
  const limit = 3;
  const [isHolidayDay, setHolidayDay] = useState(holidayListDay);
  const [isLoadingHoliday, setLoadingHoliday] = useState(false);

  const [state, setState] = useState({
    isSkeleton: false,
  })

  //Fetching API here
  const fetchHolidayList = async () =>
   await CalendarManagementAPI.getHolidayList(limit)
    .then(data => {
      setHolidayDay(data);
      setLoadingHoliday(false);
    })
    .catch(error =>
      setState({
        error,
        isLoadingHoliday: false,
      })
    );

    useEffect(() => {
     fetchHolidayList();
     setLoadingHoliday(true);

      setState({
        ...state,
        isSkeleton: false,
      });
    }

    const onLoadMore = () => {
     setState({
      ...state,
      isSkeleton: true,
      isLoadingHoliday: true,
    });

    setTimeout(() => {
      setHolidayDay(isHolidayDay);
      setState({
        ...state,
        isSkeleton: false,
      });
    }, 1000);
  };

  const loadMoreHoliday =
   !state.isLoadingHoliday && !state.isSkeleton ? (
    <div>
      <Button onClick={onLoadMore}>View More</Button>
    </div>
  ) : null;



  <CalendarHolidayList
   dataSource={isHolidayDay}
   isLoading={isLoadingHoliday}
   isLoadMore={loadMoreHoliday}
   isSkeleton={state.isSkeleton}
  />
}
const CalendarManagement=()=>{
const holidayListDay=[];
常数极限=3;
const[isHolidayDay,setHolidayDay]=useState(holidayListDay);
const[isLoadingHoliday,setLoadingHoliday]=useState(false);
常量[状态,设置状态]=使用状态({
伊斯凯尔顿:错,
})
//在这里获取API
const fetchHolidayList=async()=>
等待日历管理API.getHolidayList(限制)
。然后(数据=>{
setHolidayDay(数据);
setLoadingHoliday(假);
})
.catch(错误=>
设定状态({
错误,
isLoadingHoliday:错误,
})
);
useffect(()=>{
fetchHolidayList();
setLoadingHoliday(真);
设定状态({
……国家,
伊斯凯尔顿:错,
});
}
const onload more=()=>{
设定状态({
……国家,
伊斯凯尔顿:是的,
isLoadingHoliday:没错,
});
设置超时(()=>{
setHolidayDay(isHolidayDay);
设定状态({
……国家,
伊斯凯尔顿:错,
});
}, 1000);
};
康斯特洛德莫尔假日酒店=
!state.isLoadingHoliday&!state.isSkeleton(
查看更多
):null;
}
您可以使用这个软件包。它非常先进,您可以用任何与UI相关的软件包来实现它


只要阅读文档就可以帮到你了。

我更喜欢使用触发器。在该软件包上可以这样做吗?当然可以,你只需在组件上为端点分页实现加载更多功能,就可以了:)