rsnext/examples/progressive-render
Luc Leray f52955ec94
Clean up examples package.json (#27121)
Clean up package.json files in the `examples` directory:
- Add `private: true`
- Remove `version` (because they are irrelevant for packages that are not meant to be published)
- Remove `name` (because they are optional for packages that are not meant to be published, and when someone clones an example, they often rename it and the property becomes stale)
- Remove `author`
- Remove `description`
- Remove `license`

Also remove `with-dynamic-app-layout` example completely, since it does the same as `layout-component` (https://github.com/vercel/next.js/pull/27121#discussion_r668178408).

## Documentation / Examples

- [x] Make sure the linting passes
2021-07-12 19:58:03 +00:00
..
components Update Examples for Fast Refresh (#13068) 2020-05-18 17:44:18 -04:00
pages More redundant imports @ examples (#13190) 2020-05-22 15:33:04 +00:00
.gitignore Added .gitignore to examples that are deployed to vercel (#15127) 2020-07-16 10:52:23 -04:00
package.json Clean up examples package.json (#27121) 2021-07-12 19:58:03 +00:00
README.md docs: add 'Open in StackBlitz' buttons to various examples (#25853) 2021-06-08 20:45:02 +00:00

Example app implementing progressive server-side render

Sometimes you want to not server render some parts of your application.

For example:

  1. Third party components without server render capabilities
  2. Components that depend on window or other browser only APIs
  3. 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

Preview

Preview the example live on StackBlitz:

Open in StackBlitz

Deploy your own

Deploy the example using Vercel:

Deploy with Vercel

How to use

Execute create-next-app with npm or Yarn to bootstrap the example:

npx create-next-app --example progressive-render progressive-render-app
# or
yarn create next-app --example progressive-render progressive-render-app

Deploy it to the cloud with Vercel (Documentation).