react-native-platform-render
React Native swiss army knife tools to platform conditional render
This module provides a couple of functions and components to help in conditional render for a specifically platform (Android or iOS). Some of this techniques can help you in that struggling work of keep a single code base for cross-platform projects.
Installation
npm install react-native-platform-render --save
Conditional Container
The "PlatformView" component can take care of rendering or not your children components by filter the "target" attribute/prop.
;; ; { return <PlataformView style=borderWidth: 1 borderColor: 'red'> <Text target="ios"> Here you are at iOS! </Text> <Text target="android"> Here you are at ANDROID! </Text> </PlataformView> ; }
Higher-Order Component to work with RN Components
This HO Component enhance your custom or native components with the "target" attribute/prop behavior.
;; ; const PRText = ; // Enhancing `Text` component with the "target" attribute/prop behavior. { return <View style=borderWidth: 1 borderColor: 'blue'> <PRText target="ios"> Here you are at iOS! </PRText> <PRText target="android"> Here you are at ANDROID! </PRText> </View> ; }
Conditional Pure Function
This function/method works with two arguments, first one is the iOS content and second is the Android content for rendering.
;; ; { const conditionalContent = ; return <View style=borderWidth: 1 borderColor: 'blue'> conditionalContent </View> ; }
License
MIT