検出にはNetinfoを用います。まず、
expo install @react-native-community/netinfo
でインストールしてください。
import * as React from 'react'; import NetInfo from '@react-native-community/netinfo'; import { StyleSheet, Text, View, Alert } from 'react-native'; import { withNavigationFocus } from 'react-navigation'; import { Button } from 'react-native-elements'; class screenA extends React.Component { state = { isConnected: false, } async componentDidMount() { const unsubscribe = NetInfo.addEventListener( state => { if (this.state.isConnected && ! state.isConnected) { this.setState({ isConnected: false }); } if (!this.state.isConnected && state.isConnected) { this.setState({ isConnected: true }); } }); } render () { if (this.state.isConnected) { return ( <View> <Text>{'\n'}This is screen A, connected</Text> </View> ); } else { return ( <View> <Text>{'\n'}This is screen A, NOT connected</Text> </View> ); } } } export default withNavigationFocus(screenA);