next.js管道函数getServerSideProps配合antd完成分页

3 篇文章 0 订阅

在页面请求的时候我们都知道先去的时候就会先执行管道函数,来请求数据,当然它是由页面跳转才会执行的,也就是你访问某个路由的时候执行。那么这个时候就会渠道问题,开始的时候自己也是比较愚笨没有仔细看官方文档,想着在页面中用onChangeaxios直接搭配使用请求数据,但是也是不知道为什么在server层就是接收不到传来的参数,也是奇怪。自己的server使用的是egg.js利用this.ctx来获取,也是详细查看了相关的api,但是获取不到,求告知。
后面就去研究next.js的官网,其中就是这样一段话
在这里插入图片描述
但是你会发现,其实并不会刷新页面,这也是因为next.js的特性
搭配onChange来执行请求,

const onChange = (e) => {
    setPage(e);
    router.push({ path: "/", query: { page: e } });
  };

然后在getServerSideProps函数中我们只需要去接收传过来的参数就可以


export async function getServerSideProps(context) {
  const options = {
    page: 1,
    limit: 10,
  };
  if (context.query.page) {
    options.page = Number(context.query.page);
  }
  const res = await axios({ url: servicePath.article, data: options });
  const data = res?.data;

  return {
    props: {
      data,
    },
  };
}

在server层我们就用this.ctx.request.body来接收参数。
这也是简单记录一下自己,在写分页请求的时候遇到的问题。
本文连接:点击
博主个人小博客嘿嘿

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值