Uh oh!
There was an error while loading. Please reload this page.
fix(vue): update output target and properly emit events - #30227
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
christian-bromann
commented
Mar 5, 2025
Verified fix for reproduction case referenced in: #30170 |
christian-bromann
commented
Mar 5, 2025
This does not resolve #30179 |
christian-bromann
commented
Mar 5, 2025
Verified fix for reproduction case referenced in: #30206 |
brandyscarney
commented
Mar 5, 2025
Verified the following issues are broken on
|
ShaneK
left a comment
There was a problem hiding this comment.
I've also tested and verified what Brandy found on 8.4.4-dev.11741193800.14916f6f. Good work! 🚀
andrei0x309
commented
Mar 7, 2025
Can confirm this issue in |
robkorv
commented
Mar 12, 2025
Thanks for the fix! |
…onic-team#31159) Issue number: resolvesionic-team#27843 --------- ## What is the current behavior? `createInlineOverlayComponent` renders inline overlays (modal, popover, etc.) inside a `<template>` at their declared JSX position. When the overlay presents, `CoreDelegate` teleports the DOM node into `ion-app`, but React's synthetic event delegation root stays at the original JSX parent. Once the overlay lives outside that subtree, React no longer dispatches events to children inside it, so `onClick`, `onChange`, and other handlers inside an `IonModal` rendered within an `IonNav` silently stop firing ## What is the new behavior? Top-level inline overlays now render through `createPortal` into the same `ion-app` container that `CoreDelegate` teleports into, so React's event root follows the DOM ## Does this introduce a breaking change? - [ ] Yes - [x] No ## Other information This issue also reports the same problem in Vue, but that was fixed in ionic-team#30227 Preview: [navigation-modal](https://ionic-framework-git-fw-6314-ionic1.vercel.app/react/navigation-modal) Dev build: ``` 8.8.8-dev.11779302602.17decfbf ```
Issue number: resolves#30206resolves#30178resolves#30177resolves#30175resolves#30170
What is the current behavior?
There have been plenty of issues reported in regards to Vue components failing to propagate events. It seems like when we updated the Vue output target and started to use the provided runtime code from the output target, we have changed the way how event names are computed. Ionic has used a custom wrapper for handling events that would kebab case event names. That is no longer needed and removing it fixes observed issues.
Reproduction case working: https://stackblitz.com/edit/vj18czas-wdhzxjom?file=package.json
What is the new behavior?
We have received a fix for this in stenciljs/output-targets#617 which I hope will resolve this issue by updating the dependency.
Does this introduce a breaking change?
Other information
Dev build:
8.4.4-dev.11741193800.14916f6f