In my personal opinion, the more I’ve used Ionic 4 (coming from 2 and 3, several years’ experience), the more I believe it’s not a good approach any more for mobile apps.
Using a WebView and the DOM works for web sites and apps that run on powerful desktops. It runs like crap on mobile if you try to do even remotely complex animations.
All the Ionic demos on the docs and tutorials appear great and smooth, that is until you run them on a real device, with real limitations.
I really do applaud the work the Ionic team has done over the years, but the move to Web Components has been the nail in the coffin for me.
Download any Flutter demo app from Google play and run on a mid range Android device. Excellent performance, native speed, smooth animations and often overlooked end-of-page feedback bounce animation that Ionic lacks. You know why? Because they’re drawing the whole UI straight to a custom graphics layer, no DOM.
Time and time again I see people noticing this subtle animation’s absence and it DOES make a difference.
Why does Ionic not have proper swipeable tabs in the framework itself? Because it’s crap with a Web View. I’ve been using SuperTabs plugin as a replacement. It’s ok, but nowhere near as smooth as native. People can and do notice the difference.
I’m done making compromises and excuses for why I should keep developing in Ionic. It doesn’t matter how large the percentage of apps in the store are powered by Ionic (a recent blog post of theirs). What matters is the overall quality to the end user, which simply does not cut it.
You could make an argument that it is an advantage using Web Components, code reusability, but let’s get real: how often do you really reuse an entire component? Never. You ALWAYS end up taking it, thinking you’ll reuse it and just making a new custom version anyway. So the whole premise of Web Components falls apart.
Ionic will always be hampered by using a WebView. It’s that simple.
My opinion based on 4 years of dev with several published apps, feedback and observations.
Your mileage may vary. Happy to hear other opinions.