Mendedahkan Punca Ralat Pengambilan dalam Kompilasi Tapak Statik Next.js
Apabila menggunakan Next.js untuk membina tapak web statik, adalah penting untuk mengetahui punca ralat tertentu yang mungkin timbul semasa proses binaan. Dalam keadaan ini, kami akan menangani masalah khusus yang dihadapi semasa binaan npm run apabila menggunakan kedua-dua getStaticProps dan getStaticPaths untuk mendapatkan semula data daripada laluan API.
Butiran Ralat
Ralat utama yang dihadapi dikaitkan dengan respons JSON tidak sah yang diterima daripada laluan API semasa melaksanakan binaan npm run. Respons ini nampaknya berasal dari halaman laluan API/api/products/[slug].js.
Punca Kemungkinan
Resolusi Disyorkan
Untuk membetulkan isu ini, pertimbangkan untuk memfaktorkan semula kod anda dalam perkara berikut cara:
// /pages/product/[slug] import db from '../../../data/products'; // Remaining code. export const getStaticProps = async ({ params: { slug }, locale }) = { const result = db.filter((item) => item.slug === slug); const data = result.filter((item) => item.locale === locale)[0]; const { title, keywords, description } = data; return { props: { data, description, keywords, title, }, }; }; export const getStaticPaths = async () = { const paths = db.map(({ slug, locale }) => ({ params: { slug: slug }, locale, })); return { fallback: true, paths, }; };
Dengan menerima pakai perubahan ini, anda akan mengalih keluar pergantungan pada laluan API, menyelesaikan ralat respons JSON yang tidak sah dan membenarkan kompilasi tapak web statik yang lancar.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Ambil Semasa Kompilasi Tapak Statik Next.js dengan `getStaticProps` dan `getStaticPaths`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!