Back to React Native Web

React Native compatibility

packages/react-native-web-docs/src/pages/docs/getting-started/react-native-compatibility.md

0.21.24.3 KB
Original Source

:::lead React Native for Web provides compatibility with the vast majority of React Native's JavaScript API. Features deprecated in React Native should be considered unsupported in React Native for Web. :::

Best used with React Native >= 0.68.

Visit the React Native Directory to find React Native packages with known web support.

Components

NameStatusNotes
ActivityIndicator
Button
CheckBox
FlatList
ImageMissing multiple sources (#515) and HTTP headers (#1019).
ImageBackground
KeyboardAvoidingView(✓)Mock. No equivalent web APIs.
Modal
Picker
Pressable
RefreshControlNot started (#1027).
SafeAreaView
ScrollViewMissing momentum scroll events (#1021).
SectionList
StatusBar(✓)Mock. No equivalent web APIs.
Switch
TextNo onLongPress (#1011).
TextInputMissing rich text features (#1023), and auto-expanding behaviour (#795).
TouchableIncludes additional support for mouse and keyboard interactions.
TouchableHighlight
TouchableNativeFeedbackNot started (#1024).
TouchableOpacity
TouchableWithoutFeedback
View
VirtualizedList
YellowBox(✓)Mock. No YellowBox functionality.

APIs

NameStatusNotes
AccessibilityInfo(✓)Mock. No equivalent web APIs.
AlertNot started (#1026).
AnimatedMissing useNativeDriver support.
Appearance
AppRegistryIncludes additional support for server rendering with getApplication.
AppState
BackHandler(✓)Mock. No equivalent web APIs.
Clipboard
DeviceInfo(✓)Limited information.
Dimensions
Easing
Geolocation
I18nManager(✓)Mock. See localization for preferred approach.
InteractionManager(✓)
Keyboard(✓)Mock.
LayoutAnimation(✓)Missing translation to web animations.
Linking
NativeEventEmitter
NativeMethodsMixin
NativeModules(✓)Mocked. Missing ability to load native modules.
PanResponder
PixelRatio
Platform
SettingsNo equivalent web APIs.
ShareOnly available over HTTPS. Read about the Web Share API.
StyleSheet
UIManager
Vibration
useColorScheme
useWindowDimensions