0
点赞
收藏
分享

微信扫一扫

React+Hook+ts+antDesign实现伪定时调用接口功能

前言

大家好 我是歌谣 微信公众号关注前端小歌谣 今天要做的需求是接口 在一定时间里面执行一次的功能

定义循环时长

说一下整体实现思路吧 定义定时器执行时间的状态 这里是十秒 可以通过接口配置调用

const [delay, setDelay] = useState(10000)

定义分页

const [pageIndex, setPageIndex] = useState(0)

核心代码实现

分页变化调用接口

const timer = setInterval(() => {
      if (pageIndex == total) {

        setPageIndex(0)
        // setVisable(visable++)


      } else {
        setPageIndex(pageIndex + 1)
      }
    }, delay)
    return () => clearInterval(timer)
    // }else{
    //   const time1 = setInterval(() => {
    //     initMenuList()
    //   }, delay)
    //   return () => clearInterval(time1)
    // }

  }, [pageIndex, total])

useEffect(() => {
    initMenuList();
  }, [pageIndex]);

const initMenuList = async () => {
    const response = await postScreenList({ pageIndex: pageIndex, pageSize: 1, bedCodeList: ["CC001"] });
    console.log(response, "response");

    if (response.code == 200) {
      setMenuList(response.data);
      setTotal(response.total)
      // setPages(response.pages)
      // setCurrent(response.current)
    }
  };

备注

接口中的数据返回的response.total当数据未空时候 返回为1 其他正常返回 这样就能实现定时器的永动了

React+Hook+ts+antDesign实现伪定时调用接口功能_分页

总结

我是歌谣 放弃很容易 但是坚持一定很酷

举报

相关推荐

0 条评论