Top level route:
export const loader = async ({ request }: LoaderArgs) => {
const endpoint: string = '/api/blogs';
const params: string = 'someparams';
const blogData: Array<Blog> = await fetchData(endpoint, params);
const data = blogData.slice(0, 5);
return json({
data,
});
};
const Blog = (): JSX.Element => {
const data = useLoaderData<typeof loader>();
const arrayOfBlogs = data.data as Array<Blog>;
return (
<div className="Blog">
<RecyclingBlogs recyclingBlogs={arrayOfBlogs} />
</div>
);
};
const BlogPosts = (props: Props): JSX.Element => {
console.log(
'In Blog Posts, arrayOfBlogs is available on first load and then reloads and is unavailable',
recyclingBlogs === undefined
);
return <Section></Section>;
};
This is a miniature, simplified version of the code. Anyone got any ideas?