在 next.js 中,预渲染页面的能力可以极大地提高 seo 和性能。使用 getserversideprops,您可以在请求时获取数据,确保您的页面使用最新数据呈现。
什么时候应该使用 getserversideprops?
<p>// pages/index.tsx</p> <p>import { GetServerSideProps } from 'next';</p> <p>type HomeProps = {<br> data: string;<br> };</p> <p>export default function Home({ data }: HomeProps) {<br> return (<br></p><div> <br><h1>Server-side Rendered Page</h1> <br><p>{data}</p> <br> </div><br> );<br> } <p>// This function runs on every request<br> export const getServerSideProps: GetServerSideProps = async (context) => {<br> // Example: Fetch data from an external API or database<br> const response = await fetch('https://api.example.com/data');<br> const result = await response.json();</p> <p>// Pass data to the page component via props<br> return {<br> props: {<br> data: result.message, // Assume the API returns { message: "Hello World" }<br> },<br> };<br> };</p>
您可以在任何需要动态或用户特定数据的页面中利用此模式!