Menu

connection

connection() 函数允许你指示渲染应该等待传入的用户请求后再继续。

当组件没有使用 Dynamic APIs,但你希望它在运行时动态渲染而不是在构建时静态渲染时,这个函数很有用。这通常发生在你访问外部信息时,你故意想要改变渲染的结果,例如 Math.random()new Date()

app/page.tsx
TypeScript
import { connection } from 'next/server'
 
export default async function Page() {
  await connection()
  // 下面的所有内容都将被排除在预渲染之外
  const rand = Math.random()
  return <span>{rand}</span>
}

参考

类型

function connection(): Promise<void>

参数

  • 该函数不接受任何参数。

返回值

  • 该函数返回一个 void Promise。它不是用来被消费的。

值得注意的是

  • connection 取代了 unstable_noStore,以更好地与 Next.js 的未来保持一致。
  • 该函数仅在需要动态渲染且未使用常见 Dynamic APIs 时才有必要。

版本历史

VersionChanges
v15.0.0connection 稳定。
v15.0.0-RC引入 connection