Skip to content

Conversation

@skirtles-code
Copy link
Contributor

Based on #4882 (comment), I believe optional chaining is avoided due to its impact on bundle size. Some recent changes have used the ?. operator, so I have removed them here.

I have only removed instances that had an impact on the size of vue.global.prod.js. Code for SSR or tests or dev hasn't been changed. While some of the replacement code looks a bit verbose, I have confirmed that each change does reduce the size of the unzipped vue.global.prod.js.

@github-actions
Copy link

Size Report

Bundles

File Size Gzip Brotli
runtime-dom.global.prod.js 90.7 kB (-52 B) 34.5 kB (-34 B) 31.1 kB (+3 B)
vue.global.prod.js 148 kB (-158 B) 53.7 kB (-92 B) 48 kB (-99 B)

Usages

Name Size Gzip Brotli
createApp 50.7 kB (-15 B) 19.8 kB (-10 B) 18.1 kB (-14 B)
createSSRApp 54.1 kB (-15 B) 21.2 kB (-10 B) 19.3 kB (-12 B)
defineCustomElement 53 kB (-15 B) 20.6 kB (-10 B) 18.8 kB (-32 B)
overall 64.4 kB (-55 B) 24.9 kB (-32 B) 22.6 kB (-9 B)

@yyx990803 yyx990803 merged commit d00632b into vuejs:main Apr 29, 2024
lynxlangya pushed a commit to lynxlangya/core that referenced this pull request May 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants