If it's a somewhat complex app, I would recommend against anything but Swift or Objective-C, (Swift if you're starting entirely from scratch), because otherwise you app will simply not stack up against your native competitors in one way or another - you're at a disadvantage here, you'll always feel "not quite right" in some ways to your customers, especially if you plan to charge for the app.
If what you're building is just a mobile view into an existing web app, then React Native or Ionic, PhoneGap etc. are perfectly acceptable.
@MatejLach - why are you putting React Native together in one group with Ionic or PhoneGap? RN uses native iOS components, while I and PG uses only webview - what's your opinion here?