Right now, I'm considering which works best for me. Requirements: App for Android & iPhone plus Web-based app. The most complex part is a Graph with interactions (such as highlighting a specific value). It should feel snappy, although I don't make heavy use of neither gestures nor OS-related features.
Ionic 2 + Angular 2 seem to be the best choice, since I can basically write the app once and release for all three platforms.
React Native has the downside that React and React Native are two different things. Be aware that there is no such thing as React Native for the web. There's something in development right now, but nothing stable.
Truly native: I can't support three platforms as a single developer and I don't feel like outsourcing it.
I'll go with Ionic 2 + Angular 2, although Ionic 2 still has quite a few bugs. For example, the zoom attribute on doesn't work – which is critical for my app.
Sure, there are hacks and this reminds me on the
discussion from the other day: https://news.ycombinator.com/item?id=12477190
Yes, it's all very hacky. But there's really no alternative I guess.