rsnext/examples/with-route-as-modal
Hugo Morosini 226387694b
added "with-route-as-modal" example (#11473)
* added "with-route-as-modal" exemple

extra space missing in style.css

oops

linted

* Use Link and removed unrequired imports

Co-authored-by: Luis Alvarez <luis@zeit.co>
2020-03-31 14:10:55 -05:00
..
components added "with-route-as-modal" example (#11473) 2020-03-31 14:10:55 -05:00
pages added "with-route-as-modal" example (#11473) 2020-03-31 14:10:55 -05:00
package.json added "with-route-as-modal" example (#11473) 2020-03-31 14:10:55 -05:00
README.md added "with-route-as-modal" example (#11473) 2020-03-31 14:10:55 -05:00
style.css added "with-route-as-modal" example (#11473) 2020-03-31 14:10:55 -05:00

with-route-as-modal

On many popular social media, opening a post will update the URL but won't trigger a navigation and will instead display the content inside a modal. This behavior ensure the user won't lose the current UI context (scroll position). The URL still reflect the post's actual page location and any refresh will bring the user there. This behavior ensure great UX without neglecting SEO.

This example show how to conditionally display a modal based on a route.

Deploy your own

Deploy the example using ZEIT Now:

Deploy with ZEIT Now

How to use

Using create-next-app

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

npx create-next-app --example with-route-as-modal with-route-as-modal-app
# or
yarn create next-app --example with-route-as-modal with-route-as-modal-app

Download manually

Download the example:

curl https://codeload.github.com/zeit/next.js/tar.gz/canary | tar -xz --strip=2 next.js-canary/examples/with-route-as-modal
cd with-route-as-modal

Install it and run:

npm install
npm run dev
# or
yarn
yarn dev

Deploy it to the cloud with ZEIT Now (Documentation).