We've been using React Native for the Zulip mobile apps, and while there's definitely problems with the platform, it's also saved us a huge amount of time.
One of the things that people don't talk about enough is the product thinking cost of maintaining duplicate codebases for the same app, as one would have with a traditional fully native app for both platforms.
That said, the RN ecosystem has frequently been frustrating; RN releases often break important things, often fairly basic features of the underlying implementations (like support for automatically following redirects in various networking contexts) aren't exposed properly, which can result in a bunch of extra work. But at the same time, we're saving all of the work of maintaining two redundant mobile teams, determining and communicating details of the server/client interface with those two teams, and fixing bugs twice.
Overall, we're happy with the React Native decision, since I think it's the best platform available for what it does in 2018. But I'm also interested in whether Flutter, which in our view has a better development strategy/structure, can provide a better cross-platform mobile development experience in the coming years