我正在构建一个应用程序,以展示在Nextjs 13中使用Suspense的用法。但是,在加载时,Suspense回退没有显示。
这是page.js页面。
这是page.js页面。
import React, { Suspense } from "react";
import Loading from "./loading";
const Trending = React.lazy(() => import("./Trending"));
function Page() {
return (
<div>
<Suspense fallback={<Loading />}>
<Trending />
</Suspense>
</div>
);
}
export default Page;
这里是热门趋势
import axios from "axios";
export default async function Trending() {
const res = await axios.get(
`https://api.themoviedb.org/3/trending/movie/day?api_key=1428e09fe38be9df57355a8d6198d916`
);
const data = res.data;
// Add a delay to ensure that the Suspense fallback is shown
await new Promise((resolve) => setTimeout(resolve, 3000));
return (
<div>
<li>{data.results[0].title}</li>
</div>
);
}
如果您需要其他任何帮助,请告诉我。
我尝试了各种方法,如懒加载、添加延迟等,但仍然无法正常工作。我需要在加载数据时看到备用组件显示。