我创建了一个 nextjs 应用程序,我正在从部署在 netlify 上的快速服务器获取数据。我创建了两个页面,第一个页面显示用户列表(我有具有 getServerSideProps() 函数的用户),第二个页面是当您单击用户时,您将被重定向到用户配置文件(我'已经通过 getStaticProps() 和 getStaticPaths() 函数获得了用户的数据)。
在本地主机上一切正常。
但是当我尝试在 Netlify 上部署应用程序时,我在构建它时遇到了这个错误:
> 晚上 11:24:20 发生构建错误:错误:导出在以下路径 /users/[userid] 上遇到错误
用户列表文件:
import styles from "../../styles/Home.module.css";
import Link from "next/link";
export default function Users({ users }) {
return (
<div className={styles.container}>
{users.map((user) => (
<Link href={`/users/${user._id}`} key={user._id}>
{user.firstname}
</Link>
))}
</div>
);
}
export async function getServerSideProps() {
const res = await fetch("https://***************/api/users");
const users = await res.json();
return { props: { users} };
}
配置文件:
import React from "react";
export default function singleUser({ user }) {
return (
<div>
<h1>Hello {user.firstname}!</h1>
</div>
);
}
export async function getStaticPaths() {
const res = await fetch("https://***************************/api/users");
const users = await res.json();
const paths = users.map((user) => ({
params: { userid: user._id },
}));
return { paths, fallback: true };
}
// This also gets called at build time
export async function getStaticProps({ params }) {
const res = await fetch(`https://**********************/api/users/${params.userid}`);
const user = await res.json();
return { props: { user: user || {} }, revalidate: 3600 };
}