NextJS - 有没有办法在组件中运行服务器端查询?

Posted

技术标签:

【中文标题】NextJS - 有没有办法在组件中运行服务器端查询?【英文标题】:NextJS - Is there no way to run server-side queries in components? 【发布时间】:2021-03-02 10:01:46 【问题描述】:

我知道我们可以使用页面中的getInitialPropsgetServerSideProps 来查询服务器上的内容。

在 Gatsby 中(我知道,静态 vs s-s-r),我们可以使用useStaticQuery,在 php 中一切都是服务器端的。 在 NextJS 中是完全不可能在服务器上查询组件内的东西吗?

我找不到任何有关它的文档。如果有,为什么?

【问题讨论】:

【参考方案1】:

getStaticProps 是您真正想要的吗? https://nextjs.org/docs/basic-features/data-fetching#getstaticprops-static-generation

【讨论】:

嗯不完全——我更想问的是我们是否可以在组件内运行 服务器端 查询(例如,查询我的 Header 组件内的菜单项)。所有getXProps 函数仅在页面级工作。似乎很奇怪,您无法在其他任何地方进行 s-s-r 查询。 啊,我明白了!对不起,我想我错过了你的观点。我不认为这是支持的,但希望我错了。

以上是关于NextJS - 有没有办法在组件中运行服务器端查询?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 NextJS Image 组件中运行图像的 onLoad 函数

Formik 没有显示在 nextjs 页面上?

NextJs _app 中的持久导航

Nextjs:无法从静态文件夹加载图像

在 nextjs 区域之间共享组件的推荐方式?

NextJS 在客户端和服务器端获取数据