reactjs NextJS服务器基于客户端输入获取

2wnc66cl  于 2023-05-22  发布在  React
关注(0)|答案(1)|浏览(117)

我已经把一个客户端和一个服务器组件(基于App Router)放在一起,并设法根据用户输入(特别是当用户输入任何内容时)刷新服务器,基本上强制刷新路由。

router.push(pathname)

到目前为止一切顺利,但我实际上需要将用户输入从客户端传递到服务器,以便根据它(即日期范围)过滤提取。
我猜我可以使用dynamic routes,但语义上感觉不对(这不像我正在导航到实体细节)。另外,server actions看起来也是我所需要的,但由于它是一个实验性的特性,我想知道是否已经有了一种不同的方法可用;基于用户输入的服务器获取对我来说似乎是一个基本的功能,但仍然找不到一个直接的“官方”模式来让它工作。

任何替代方案/建议?
编辑正如@ivanatias所建议的,这个线程展示了如何通过查询字符串传递参数,虽然这可能会起作用,但不幸的是,由于url正在更改,输入字段的状态丢失。

i2byvkas

i2byvkas1#

你可以在Next.js 13 doc(app Dir)中使用更新searchParams示例。

  • 这个想法是使用客户机钩子(usePathnameuseSearchParamsuseRouter)的组合,从next/navigation导入。

相关问题