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

Add example with forwardRef for next/link to readme #8428

Merged
merged 2 commits into from
Aug 19, 2019

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Aug 19, 2019

Since we support function components as children of next/link for now this shows an example of how React.forwardRef needs to be used with it for proper handling.

x-ref: #8425

@ijjk
Copy link
Member Author

ijjk commented Aug 19, 2019

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js docs/link-function-child Change
buildDuration 26.4s 26.3s -160ms
nodeModulesSize 41.3 MB 41.3 MB ⚠️ +425 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.js 17.9 kB 17.9 kB
main-HASH.js gzip 6.56 kB 6.56 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.module.js 16.2 kB 16.2 kB
main-HASH.module.js gzip 6.28 kB 6.28 kB
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change
Client Pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 600 B 600 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 290 B 290 B
Overall change
Client Pages Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Fetched pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
link 2.8 kB 2.8 kB
link gzip 847 B 848 B ⚠️ +1 B
index 2.75 kB 2.75 kB
index gzip 840 B 841 B ⚠️ +1 B
withRouter 2.81 kB 2.81 kB
withRouter gzip 835 B 836 B ⚠️ +1 B
Overall change

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js docs/link-function-child Change
buildDuration 28.6s 28.9s ⚠️ +267ms
nodeModulesSize 41.3 MB 41.3 MB ⚠️ +425 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.js 17.9 kB 17.9 kB
main-HASH.js gzip 6.56 kB 6.56 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.module.js 16.2 kB 16.2 kB
main-HASH.module.js gzip 6.28 kB 6.28 kB
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change
Client Pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 600 B 600 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 290 B 290 B
Overall change
Client Pages Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Serverless bundles
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_error.js 247 kB 247 kB
_error.js gzip 66.3 kB 66.3 kB
hooks.html 2.87 kB 2.87 kB
hooks.html gzip 865 B 866 B ⚠️ +1 B
index.js 248 kB 248 kB
index.js gzip 66.6 kB 66.6 kB
link.js 255 kB 255 kB
link.js gzip 68.8 kB 68.8 kB
routerDirect.js 248 kB 248 kB
routerDirect.js gzip 66.5 kB 66.5 kB
withRouter.js 248 kB 248 kB
withRouter.js gzip 66.6 kB 66.6 kB ⚠️ +1 B
Overall change

@Timer Timer added this to the 9.0.5 milestone Aug 19, 2019
@ijjk
Copy link
Member Author

ijjk commented Aug 19, 2019

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js docs/link-function-child Change
buildDuration 25.7s 25.6s -62ms
nodeModulesSize 41.3 MB 41.3 MB ⚠️ +425 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.js 17.9 kB 17.9 kB
main-HASH.js gzip 6.56 kB 6.56 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.module.js 16.2 kB 16.2 kB
main-HASH.module.js gzip 6.28 kB 6.28 kB
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change
Client Pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 600 B 600 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 290 B 290 B
Overall change
Client Pages Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Fetched pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
link 2.8 kB 2.8 kB
link gzip 847 B 850 B ⚠️ +3 B
index 2.75 kB 2.75 kB
index gzip 840 B 841 B ⚠️ +1 B
withRouter 2.81 kB 2.81 kB
withRouter gzip 835 B 837 B ⚠️ +2 B
Overall change

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js docs/link-function-child Change
buildDuration 26.5s 25.6s -893ms
nodeModulesSize 41.3 MB 41.3 MB ⚠️ +425 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.js 17.9 kB 17.9 kB
main-HASH.js gzip 6.56 kB 6.56 kB
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
main-HASH.module.js 16.2 kB 16.2 kB
main-HASH.module.js gzip 6.28 kB 6.28 kB ⚠️ +1 B
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change
Client Pages
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 601 B 600 B -1 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB ⚠️ +1 B
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 289 B 290 B ⚠️ +1 B
Overall change
Client Pages Modern
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Serverless bundles
zeit/next.js canary ijjk/next.js docs/link-function-child Change
_error.js 247 kB 247 kB
_error.js gzip 66.3 kB 66.3 kB -4 B
hooks.html 2.87 kB 2.87 kB
hooks.html gzip 867 B 866 B -1 B
index.js 248 kB 248 kB
index.js gzip 66.6 kB 66.6 kB -2 B
link.js 255 kB 255 kB
link.js gzip 68.8 kB 68.8 kB -2 B
routerDirect.js 248 kB 248 kB
routerDirect.js gzip 66.5 kB 66.5 kB -2 B
withRouter.js 248 kB 248 kB
withRouter.js gzip 66.6 kB 66.6 kB -1 B
Overall change

@Timer Timer merged commit 144eecd into vercel:canary Aug 19, 2019
@vercel vercel locked as resolved and limited conversation to collaborators Feb 1, 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.

2 participants