The Wire · Showcase
VUE VAPOR REARCHITECTS EVENT DELEGATION, SHIPS BREAKING CHANGES
By RepoJournal · Filed · About Vue.js
Vue's experimental Vapor compiler just broke event handling to make it faster: event delegation is now opt-in, not automatic.
Vue-jsx-vapor v3.2.21 landed with a compiler overhaul that replaces the logicalIndex system with block placeholders [1], a fundamental shift in how the compiler tracks component structure. The same release flips event delegation from on-by-default to opt-in [1], giving you control over performance versus convenience. This tracks closely with upstream changes copied from vue/core [2] that fix event modifier preservation and quoted attribute spacing. The patch also resolves slot fallback behavior across multiple roots [3], addressing a corner case that would have bitten production code. In 8 commits across the experiment, zhiyuanzmj has been steadily pulling fixes from the mainline, suggesting Vapor is moving closer to stability.
One email a day. Unsubscribe in one click.
Keep up with Vue.js in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review event delegation changes in v3.2.21 before adopting Vapor in production vuejs/vue-jsx-vapor [plan]
- → Audit any existing Vapor projects for event modifier handling after the merge vuejs/vue-jsx-vapor [monitor]
References
- [1] v3.2.21 ↗ vuejs/vue-jsx-vapor
- [2] fix(compiler-vapor): preserve modifiers on merged event handlers vuejs/vue-jsx-vapor
- [3] fix(compiler/vapor): resolve fallback across multiple slot roots vuejs/vue-jsx-vapor