Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Docs] Add documentation for Router.prefetch #12333

Merged
merged 7 commits into from
May 2, 2020

Conversation

lfades
Copy link
Member

@lfades lfades commented Apr 30, 2020

Feedback wanted 🙏

@lfades lfades requested a review from Timer as a code owner April 30, 2020 00:28
@lfades lfades changed the title Added prefetch docs [Docs] Add documentation for Router.prefetch Apr 30, 2020
@lfades lfades requested a review from chibicode April 30, 2020 00:29
@ijjk
Copy link
Member

ijjk commented Apr 30, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General
zeit/next.js canary lfades/next.js docs/router-prefetch Change
buildDuration 11.7s 12.2s ⚠️ +509ms
nodeModulesSize 55.2 MB 55.2 MB
Page Load Tests Overall increase ✓
zeit/next.js canary lfades/next.js docs/router-prefetch Change
/ failed reqs 0 0
/ total time (seconds) 1.906 1.968 ⚠️ +0.06
/ avg req/sec 1311.57 1270.05 -41.52
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.003 0.974 -0.03
/error-in-render avg req/sec 2492.15 2566.81 ⚠️ +74.66
Client Bundles (main, webpack, commons)
zeit/next.js canary lfades/next.js docs/router-prefetch Change
main-HASH.js gzip 6.28 kB 6.28 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..5232.js gzip 10.3 kB 10.3 kB
framework.a1..NSE.txt gzip 220 B 220 B
framework.a1..NSE.txt gzip 220 B 220 B
framework.HASH.js gzip 39.2 kB 39.2 kB
Overall change 57 kB 57 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary lfades/next.js docs/router-prefetch Change
main-HASH.module.js gzip 4.82 kB 4.82 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.88 kB 6.88 kB
framework.HA..dule.js gzip 39.2 kB 39.2 kB
Overall change 51.7 kB 51.7 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary lfades/next.js docs/router-prefetch Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_app.js gzip 1.23 kB 1.23 kB
_error.js gzip 3.13 kB 3.13 kB
hooks.js gzip 663 B 663 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 280 B 280 B
withRouter.js gzip 278 B 278 B
Overall change 7.86 kB 7.86 kB
Client Pages Modern
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_app.module.js gzip 598 B 598 B
_error.module.js gzip 2.09 kB 2.09 kB
hooks.module.js gzip 383 B 383 B
index.module.js gzip 223 B 223 B
link.module.js gzip 1.52 kB 1.52 kB
routerDirect..dule.js gzip 279 B 279 B
withRouter.m..dule.js gzip 278 B 278 B
Overall change 5.37 kB 5.37 kB
Client Build Manifests
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Rendered Page Sizes
zeit/next.js canary lfades/next.js docs/router-prefetch Change
index.html gzip 926 B 926 B
link.html gzip 937 B 937 B
withRouter.html gzip 925 B 925 B
Overall change 2.79 kB 2.79 kB

Serverless Mode
General
zeit/next.js canary lfades/next.js docs/router-prefetch Change
buildDuration 12.3s 12.3s -71ms
nodeModulesSize 55.2 MB 55.2 MB
Client Bundles (main, webpack, commons)
zeit/next.js canary lfades/next.js docs/router-prefetch Change
main-HASH.js gzip 6.28 kB 6.28 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..5232.js gzip 10.3 kB 10.3 kB
framework.a1..NSE.txt gzip 220 B 220 B
framework.a1..NSE.txt gzip 220 B 220 B
framework.HASH.js gzip 39.2 kB 39.2 kB
Overall change 57 kB 57 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary lfades/next.js docs/router-prefetch Change
main-HASH.module.js gzip 4.82 kB 4.82 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.88 kB 6.88 kB
framework.HA..dule.js gzip 39.2 kB 39.2 kB
Overall change 51.7 kB 51.7 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary lfades/next.js docs/router-prefetch Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_app.js gzip 1.23 kB 1.23 kB
_error.js gzip 3.13 kB 3.13 kB
hooks.js gzip 663 B 663 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 280 B 280 B
withRouter.js gzip 278 B 278 B
Overall change 7.86 kB 7.86 kB
Client Pages Modern
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_app.module.js gzip 598 B 598 B
_error.module.js gzip 2.09 kB 2.09 kB
hooks.module.js gzip 383 B 383 B
index.module.js gzip 223 B 223 B
link.module.js gzip 1.52 kB 1.52 kB
routerDirect..dule.js gzip 279 B 279 B
withRouter.m..dule.js gzip 278 B 278 B
Overall change 5.37 kB 5.37 kB
Client Build Manifests
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles
zeit/next.js canary lfades/next.js docs/router-prefetch Change
_error.js 557 kB 557 kB
404.html 4.18 kB 4.18 kB
hooks.html 3.81 kB 3.81 kB
index.js 557 kB 557 kB
link.js 595 kB 595 kB
routerDirect.js 587 kB 587 kB
withRouter.js 588 kB 588 kB
Overall change 2.89 MB 2.89 MB

{/* Form fields */}
<button type="submit">Login</button>
{// Prefetch the dashboard page as the user will go there after the login
Router.prefetch('/dashboard')}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we really put Router.prefetch('...') here (as part of the rendered code)? Why not use useEffect() as it's a side effect?

docs/api-reference/next/router.md Outdated Show resolved Hide resolved
docs/api-reference/next/router.md Outdated Show resolved Hide resolved
docs/api-reference/next/router.md Outdated Show resolved Hide resolved
docs/api-reference/next/router.md Outdated Show resolved Hide resolved
Timer and others added 5 commits May 2, 2020 00:38
Co-authored-by: Shu Uesugi <shu@chibicode.com>
Co-authored-by: Shu Uesugi <shu@chibicode.com>
Co-authored-by: Shu Uesugi <shu@chibicode.com>
Co-authored-by: Shu Uesugi <shu@chibicode.com>
@Timer Timer added this to the 9.3.7 milestone May 2, 2020
@Timer Timer merged commit 1f324c7 into vercel:canary May 2, 2020
@Timer Timer modified the milestones: 9.3.7, 9.4 May 11, 2020
rokinsky pushed a commit to rokinsky/next.js that referenced this pull request Jul 11, 2020
@vercel vercel locked as resolved and limited conversation to collaborators Jan 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants