#React-Native
13 posts tagged with this topic. ← All tags
-
WebSocket on mobile: what the OS does to your connection in the background.
Mobile operating systems aggressively manage connections when an app is backgrounded. What iOS and Android do to your WebSocket and how to handle it.
-
React Native performance: the FlatList settings that stop jank.
FlatList is the standard way to render large lists in React Native, but its default settings aren't optimal for all cases. The props that make the biggest performance difference.
-
Background vs foreground on iOS: what happens to your WebSocket.
iOS aggressively suspends background apps to save battery. What that means for WebSocket connections and the strategies for handling the transition.
-
Debugging React Native: the tools that actually tell you what's wrong.
A practical overview of the debugging tools available in React Native -- the built-in debugger, Flipper, React DevTools, and logging strategies that work in production.
-
Reanimated: why React Native animations need a different model.
React Native's built-in Animated API has limitations that Reanimated solves by running animations on the UI thread. The core concepts and when the difference matters.
-
Platform-specific code: .ios.js files vs Platform.OS.
React Native offers two ways to write platform-specific code: file extensions that the bundler resolves automatically, and the Platform API for inline branching.
-
Networking in React Native: the fetch quirks nobody documents.
React Native supports fetch and XMLHttpRequest, but there are platform-specific quirks around SSL, timeouts, and iOS App Transport Security that catch developers off guard.
-
AsyncStorage: client-side persistence without a database.
AsyncStorage is React Native's equivalent of localStorage -- a simple key-value store for persisting data on the device. How it works and when to use it.
-
Microphone permission on iOS: the request flow and the edge cases.
How iOS microphone permissions work, when the system dialog appears, what happens when users deny it, and how to handle all the states in a React Native app.
-
The iOS keyboard covers your input. Here's the fix.
When the iOS keyboard opens, it can cover the TextInput the user is typing into. The correct fix depends on your layout, and there are several approaches.
-
React Navigation: Stack, Tab, Drawer and when each one fits.
The three core navigators in React Navigation, what each one renders natively, and the patterns that work well for real mobile apps.
-
Flexbox on mobile: the defaults that differ from the web.
React Native uses Flexbox for layout, but the defaults are different from the web. The key differences that cause layout confusion and how to work with them.
-
React Native is not React for mobile. Here's what actually changes.
React Native shares React's component model but runs in a fundamentally different environment. The differences that trip up web developers most often.