While working on a mobile app, you will inevitably have to deal with touch based inputs, for example a press on the screen. As a developer, you surely know the so-far unchallenged component TouchableOpacity and its friends TouchableWithoutFeedback and TouchableHighlight. However, React Native introduced Pressable in July 2020, which is likely to question the status quo. It is THE new wrapper that manages press interactions on its children and which is intended to replace all the touchable components that React Native proposes. But why should you use it?
Indeed, with this single component you can basically implement all the features offered by TouchableOpacity, TouchableWithoutFeedback and TouchableHighlight, and even more!
But that is not all! Pressable includes additional behaviors that are not offered by touchable components. For instance, it can handle focus and blur events. It also supports web platforms interactions allowing to deal with hovers. These last options were not proposed by the touchable components: thus, it is a big step, especially considering the current state of React Native Web.
You surely wonder how this new component is more reliable than the different touchables. The answer comes right from the React Native documentation, on the Pressable page: it uses the Pressability API which is a refactoring of the code behind the touchable components.