Blog>
Snippets

Utilizing Lazy Loading with React Suspense for Chart Components

Illustrate how to lazily load TanStack React Charts components with React Suspense to improve the load time of web applications that include complex charts.
import React, { Suspense } from 'react';
const LazyLoadedChart = React.lazy(() => import('./LazyLoadedChart'));
This code snippet demonstrates how to use React's lazy function to dynamically import a Chart component, which could be a component that utilizes TanStack React Charts. The 'LazyLoadedChart' component will only be loaded when it's required, thus reducing the initial load time.
function ChartContainer() {
  return (
    <Suspense fallback={<div>Loading Chart...</div>}>
      <LazyLoadedChart />
    </Suspense>
  );
}
Here, we wrap our lazily loaded Chart component, 'LazyLoadedChart', with the Suspense component. The 'fallback' prop is used to render a loading message (or any placeholder component) while the Chart component is being loaded asynchronously.