diff --git a/docs/framework/react/react-native.md b/docs/framework/react/react-native.md index 3560420c93..17f3d2ea11 100644 --- a/docs/framework/react/react-native.md +++ b/docs/framework/react/react-native.md @@ -41,9 +41,23 @@ import { onlineManager } from '@tanstack/react-query' import * as Network from 'expo-network' onlineManager.setEventListener((setOnline) => { + let initialised = false + const eventSubscription = Network.addNetworkStateListener((state) => { + initialised = true setOnline(!!state.isConnected) }) + + Network.getNetworkStateAsync() + .then((state) => { + if (!initialised) { + setOnline(!!state.isConnected) + } + }) + .catch(() => { + // getNetworkStateAsync can reject on some platforms/SDK versions + }) + return eventSubscription.remove }) ```