Live data from Hacker News

React Native Navigation Library

airbnb.io

31–40 of 56 posts

Re: React Native Navigation Library

#31
post #8

Am I the only one wondering what the heck this actually is? The page this linked to just goes right into a guide on how to use it but doesn't explain what it is. The github page has a nifty looking guy on it, but once again it's just a jumble of buzzwords I do not understand at all. Why does the Javascript community make me feel stupid? App-wide support for 100% native navigation with an easy cross-platform interface…

  nifty looking guy

  react-native-controllers
I think you may be reading the docs for the Wix navigation library instead of the Airbnb one linked above.

Re: React Native Navigation Library

#32
post #24

Ummm [0] ...would appreciate an explanation here. [0]: https://github.com/airbnb/native-navigation/blob/91ae656192d...

This has a feel of it solved a race condition due to scheduling something on a few ticks later. So it might accomplish not only running something on the main queue but also sneakily after something else finished. For example if you call something like this at the end of view did load, other code that also runs on the main thread may run before it. It's async. Having said that, it kind of feels hacky. I have certainly…

Weird. Seems like that would be better done by invoking NSRunLoop APIs...Plus, you know, filing a Radar.

Re: React Native Navigation Library

#33
It's obvious that this is a super-early release, but I'm happy that AirBnB ENG is working on a navigation solution.

Also:

On iOS, ViewController transitions can be animated using Lottie. It's possible we could add support for such a feature into Native Navigation.

Yes please.

Re: React Native Navigation Library

#34
post #8

Am I the only one wondering what the heck this actually is? The page this linked to just goes right into a guide on how to use it but doesn't explain what it is. The github page has a nifty looking guy on it, but once again it's just a jumble of buzzwords I do not understand at all. Why does the Javascript community make me feel stupid? App-wide support for 100% native navigation with an easy cross-platform interface…

Can anyone using it comment on "but provides a simplified more abstract API"? Because native navigation API can hardly be any simpler, imho.

Re: React Native Navigation Library

#36
post #24

Ummm [0] ...would appreciate an explanation here. [0]: https://github.com/airbnb/native-navigation/blob/91ae656192d...

This has a feel of it solved a race condition due to scheduling something on a few ticks later. So it might accomplish not only running something on the main queue but also sneakily after something else finished. For example if you call something like this at the end of view did load, other code that also runs on the main thread may run before it. It's async. Having said that, it kind of feels hacky. I have certainly…

Isn't this the standard "Let the queue pump events" technique for dealing with the async UI elements in iOS that don't always behave like you expect them to - such as the system alerts? I mean, I'm not justifying this code, which looks quite weird, but one of the reasons for it may be that the framework has to allow events to pump through the iOS queues, such that events propagate all the way through to the system alerts ..

Re: React Native Navigation Library

#39
I'm a bit confused. From this library's README:

> If you are investigating navigation solutions and you are okay with JavaScript-based solutions, we also encourage you to check out React Navigation.

However if you go to React Navigation home page [1] you find this:

> Navigation views that deliver 60fps animations, and utilize native components to deliver a great look and feel.

It looks like every RN navigation library claims to be more "native" than the previous ones.

[1] https://github.com/airbnb/native-navigation/

[2] https://reactnavigation.org/

Re: React Native Navigation Library

#40

I'm a bit confused. From this library's README: > If you are investigating navigation solutions and you are okay with JavaScript-based solutions, we also encourage you to check out React Navigation. However if you go to React Navigation home page [1] you find this: > Navigation views that deliver 60fps animations, and utilize native components to deliver a great look and feel. It looks like every RN navigation librar…

Everything in React Native is "native" views. The issue is that the RN community seems to be pretty heavily divided with respect to exactly where the API boundary should be.

AirBnB's native-navigation library literally has native iOS and Android code to create views, transitions etc.

react-navigation on the other hand is mostly JS driven, instead using the core functionality of React Native, which does generate native views.

The problem with react-navigation (and many libraries using a similar approach) is that you don't get a true native feel once you start interacting with the UI. This is because the JS -> native bridge is async, meaning you literally can't handle events as quickly as they're dispatched in native code - particularly if the events are synchronous.

I'm a huge fan of AirBnb's approach. Doing things in JS just because you "can" is inherently broken (as described above). Checkout the following Github issue for a demonstration of the issue: https://github.com/react-community/react-navigation/issues/1...

Post reply on HN