【发布时间】:2021-10-06 00:23:18
【问题描述】:
我想将组件中的道具传递给 getServerSideProps()。他们都在同一页上。下面的代码我想将 url 从我的组件传递给 getServerSideProps() 以便我可以使用相同的 url 从 API 获取数据。
export default function Home({data}) {
const [number, getNumber] = useState("9999999999")
const url =`{http://apilayer.net/api/validate?access_key=e52d69f119348057d68ec090d2d10978&number=${number}}`;
return (
<div>
<Head>
<title>Numverify</title>
<meta name="description" content="Generated by create next app" />
<link rel="icon" href="/favicon.ico" />
</Head>
<main>
<div className="h-16 dark:bg-gray-900 bg-white shadow-md flex justify-center items-center">
<span className="text-gradient font-bold text-xl">NumVerify</span>
</div>
</main>
</div>
)
}
export async function getServerSideProps() {
const res = await fetch(url);
const data = await res.json();
return {
props: {
data,
}
}
}
【问题讨论】:
-
你不能将数据从你的组件传递给
getServerSideProps,数据会反过来,从getServerSideProps到你的React组件。 -
那么我应该使用什么来代替 getServerSideProps?
标签: reactjs next.js fetch-api getserversideprops