2 ms·
Why would it be nonsense, when it outputs native elements, what could give it away?
by Demiurge 8y ago
Why would it be nonsense, when it outputs native elements, what could give it away?
- LeoNatan25 8y agoBecause that's incorrect. Yes, it outputs `UIView` objects. But that's far from being native. Just a few examples: a button/"touchable opacity" is not a `UIButton`, it's a custom view where RN fakes the touch animation in JavaScript(!). Gesture recognizers are faked in JavaScript. Animation doesn't use Core Animation but fakes it either in JavaScript or in custom C++ implementation in the Animated module. It's one big lie to call React Native "Native".
- Demiurge 8y agoOk, thanks for a more informative reply, I didn't know about how some of the interop between JavaScript and native broke the native bits. That's good to know. Still though, this is a subset of native functionality. It sounds like there can still be two apps one native one 'react native' that are indistinguishable as long as they use that subset. No?
- LeoNatan25 8y agoNo. I only gave you small examples. For example, system margins and guides are not taken into account by the RN layout system, causing apps to look non-native. Almost everything is implemented reinvent-the-wheel style in RN, which makes it uncanny valley (and thus, very easy to spot).