具体来说,我在导航栏上显示来自 API 端点的数据。我想使用 getStaticProps 来获取所有页面上的这些数据。但问题是我需要在所有页面上执行 getStaticProps 。
我们可以做这样的事情并获取所有页面上的数据作为 props 吗?
//pages/_app.js
function MyApp({ Component, pageProps, navs }) {
return (
<>
<Component {...pageProps} navs={navs} />
</>
);
}
export async function getStaticProps() {
const res = await api.get("/api/v1/navs");
const navs = res.data;
return {
props: {
navs,
},
// revalidate: 60, // In seconds
};
}
export default MyApp;
Run Code Online (Sandbox Code Playgroud)
这样做的替代方法是什么?有没有办法管理全局状态,以便所有页面都使用它?我不认为我们也可以使用 Context API 向所有页面提供数据。