Everything working fine on local but on build it gives error:
Error occurred prerendering page "/dashboard". Read more: https://nextjs.org/docs/messages/prerender-error
TypeError: Cannot read properties of undefined (reading 'data')
at l (/home/vishal/linkgrid-client/.next/server/chunks/28.js:48:2496)
at async p (/home/vishal/linkgrid-client/.next/server/chunks/28.js:48:2667)
Export encountered an error on /(root)/dashboard/page: /dashboard, exiting the build.
⨯ Static worker exited with code: 1 and signal: null
Grid List component:
import { getGrids } from '@/actions/grid.action';
import GridListItem from '@/app/(root)/dashboard/_components/grid-list-item';
import ErrorMessage from '@/components/error-message';
const GridsList = async () => {
const grids = await getGrids();
if (!grids?.success) return <ErrorMessage>{grids?.message}</ErrorMessage>;
return (
<>
{grids?.data?.map((grid) => {
return <GridListItem grid={grid} key={grid._id} />;
})}
</>
);
};
export default GridsList;
Api function:
import { authApi } from '@/lib/auth-api';
import { ApiResponseType, GridType } from '@/types/types';
export const getGrids = async (): Promise<ApiResponseType<GridType[]>> => {
try {
const res = await authApi.get('/grids');
return res.data;
} catch (error: any) {
return error.response.data;
}
};
authApi is a axios instance that add access token in request interceptor.