4.1 PropTypesを削除する
React 19では、ReactパッケージからPropTypesが削除されています。PropTypesの使用箇所はすべて、TypeScriptインターフェイスに移行する必要があります。
PropTypesの使用箇所をすべて検索する方法
4.2 defaultPropsを置き換える
React 19では、関数コンポーネントでのdefaultPropsのサポートが削除されています。代わりにデフォルトパラメーター値を使用します。
defaultPropsの使用箇所をすべて検索する方法
4.3 BackHandler.removeEventListenerを置き換える
BackHandler.removeEventListener()はReact Nativeによって削除されました。代わりにサブスクリプションパターンを使用します。
使用箇所をすべて検索する方法
4.4 useNativeDriverの混在使用を修正する
RN 0.72では、ネイティブドライバーとJSドライバーのアニメーションの混在はサポートされていませんでしたが、警告が生成されるだけでした。RN 0.83では、この混在により致命的なクラッシュ(SIGABRT)が発生します。 次の2つのルールがあり、両方とも適用されます。- 値単位: 1つの
Animated.Valueは、その存続期間を通じてすべてのアニメーションで同じドライバーを使用する必要があります。 - ビュー単位(新しく適用): 1つの
Animated.View上の同じスタイルオブジェクトに結合されたすべてのAnimated.Valueインスタンスは、同じドライバーを使用する必要があります。
- ネイティブドライバー(
useNativeDriver: true):transform、opacity。すべてのuseNativeDriver: trueを一律にfalseに変更しないでください。競合のある値だけを修正してください。 - JSドライバー(
useNativeDriver: false):backgroundColor、width、height、色の補間。
4.5 従来のコンテキストAPIの使用箇所を更新する
React 19では、従来のコンテキストContextAPI(childContextTypes、getChildContext)が完全に削除されています。最新のコンテキストContextAPIを使用してください。
4.6 Reactフックの明示的なインポートを追加する
フックを使用するファイルでは、フックを明示的にインポートしないと、「ReferenceError: useState is not defined」というエラーが発生します。
4.7 互換性のないツールを削除する
一部の開発ツールはReact 19と互換性がありません。react@^18をピア依存関係として固定する開発依存関係がないかどうかを確認します。
4.8 SafeAreaViewの使用方法を更新する
React Native 0.83では、react-native-safe-area-contextが依存関係として必要です。アプリのルートコンポーネントを更新します。

