在白标签Next.js应用程序中,可以在构建时获取静态数据。下面是一个包含代码示例的解决方法:
首先,在项目的根目录下创建一个名为data
的文件夹,并在其中创建一个名为staticData.js
的文件。
在staticData.js
文件中,编写获取静态数据的代码。可以使用fetch
或其他适合的方法从服务器端获取数据。以下是一个示例代码:
export const getStaticData = async () => {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
return data;
};
getStaticProps
方法获取静态数据。在页面组件中创建一个staticProps
函数,并在其中调用getStaticData
方法来获取数据。以下是一个示例代码:import { getStaticData } from '../data/staticData';
export async function getStaticProps() {
const data = await getStaticData();
return {
props: {
data,
},
};
}
function MyPage({ data }) {
// 使用获取到的静态数据
return (
{data.title}
{data.description}
);
}
export default MyPage;
在上述代码中,getStaticProps
函数通过调用getStaticData
方法来获取静态数据,并将数据作为props
返回。然后,在页面组件中可以通过{data}
来访问获取到的静态数据。
这样,在构建时,Next.js会调用getStaticProps
方法来获取静态数据,并将数据注入到页面组件中。