TypeScript 和 React for getServerSideProps 中的"context"是什么(一般问题)



我是编码新手,对遇到的这种语法有一个普遍的问题。我不理解这行代码,在网上找不到任何帮助我理解它的东西:

export async function getServerSideProps(context: GetServerSidePropsContext) {
const { getProduct } = await import('../../util/database');   
const productId = context.query.productId; // is a string   
...  
}

(这不是整个代码,只是相关部分(

所以我没有得到的是:

  • 这个上下文是什么(我读过它使道具在全球可用?(?它看起来像是TS的类型定义-
  • 这个上下文来自React还是TS
  • 它的功能像React中的道具吗

这个上下文是什么(我读过它使道具全局可用?(?它看起来像是TS-的类型定义

这就是React的上下文。这是一个Next.js,它在这里被描述为一个对象,包含关于服务器端代码处理的页面/路由的各种信息。根据该文件:

从页面导出名为getServerSideProps(服务器端渲染(的函数时,Next.js将使用getServerSideProps返回的数据在每次请求时预渲染此页面。如果您想获取经常更改的数据,并更新页面以显示最新的数据,这将非常有用。

继续您的问题。。。

此上下文来自React还是TS?

都不是,它来自Next.js.

它的功能像React中的道具吗?

不是真的(至少不是一般的React道具概念(,但它可以返回包含页面组件道具的东西。

最新更新