You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
bug: IonTabs (standalone) imports the directives/proxies barrel, so every component lands in the initial chunk #31594
Per-component entry points (#31303, closing #30114) let a standalone app keep Ionic components that only lazy routes use out of the initial chunk. As soon as the app uses IonTabs, that no longer works.
packages/angular/src/standalone/navigation/tabs.ts imports from the barrel:
directives/proxies re-exports every component proxy. Bundlers assign chunks by reachability, so an eager IonTabs (the usual tabs shell at the root route) pulls every Ionic component the app uses anywhere into the initial chunk. That includes fab, segment-button, datetime-button, reorder, infinite-scroll, card and grid, even when only lazy routes import them.
The code-splitting test app added in #31401 has no tabs (ion-app + ion-router-outlet only), so the test doesn't catch this.
Expected Behavior
Using IonTabs adds only the tabs, tab bar and tab code to the chunk that imports it.
Steps to Reproduce
Use a standalone app with an eager tabs shell (IonTabs in the root route's component) and several lazy routes that use other components (e.g. IonFab, IonSegmentButton, IonInfiniteScroll).
Import every component from its per-component entry (@ionic/angular/ion-fab, ...).
Run ng build --stats-json and inspect the initial chunk: the lazy-only components are in it, reached through navigation/tabs.js → directives/proxies.js.
Proposed fix
Import the two proxies from their own files, as the per-component entries already do:
Thanks for the report, great find! A PR has been put up for this that looks like a solid fix, it'll be merged soon and the fix should be deployed this week when the next patch release goes out
Activity
ShaneK commentedon Oct 19, 2026
Thanks for the report, great find! A PR has been put up for this that looks like a solid fix, it'll be merged soon and the fix should be deployed this week when the next patch release goes out
fix(angular): import tab proxies directly in standalone tabs (ionic-t…
ShaneK commentedon Oct 21, 2026
The fix for this issue was deployed in v9.0.9!