5dd4999b64
Strategized with @balazsorban44 to open one larger PR, with changes to individual examples as separate commits. For each example, I researched how multiple realworld codebases use the featured technology with TypeScript, to thoughtfully convert them by hand - nothing automated whatsoever. ## Documentation / Examples - [X] Make sure the linting passes by running `pnpm lint` - [X] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md) |
||
---|---|---|
.. | ||
components | ||
pages | ||
.gitignore | ||
package.json | ||
README.md | ||
tsconfig.json |
Example app implementing progressive server-side render
Sometimes you want to not server render some parts of your application.
For example:
- Third party components without server render capabilities
- Components that depend on
window
or other browser only APIs - Content isn't important enough for the user (eg. below the fold content)
To handle these cases, you can conditionally render your component using the useEffect
hook.
This example features:
- A custom hook called
useMounted
, implementing this behavior - An app with a component that must only be rendered in the client
- A loading component that will be displayed before rendering the client-only component
Deploy your own
Deploy the example using Vercel or preview live with StackBlitz
How to use
Execute create-next-app
with npm, Yarn, or pnpm to bootstrap the example:
npx create-next-app --example progressive-render progressive-render-app
yarn create next-app --example progressive-render progressive-render-app
pnpm create next-app --example progressive-render progressive-render-app
Deploy it to the cloud with Vercel (Documentation).