Skip to content

Error in backHandler Expo 53 #5825

Description

@Sala01

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch native-base@3.4.28 for the project I'm working on.

i fixed an issue in Expo 53

Here is the diff that solved my problem:

diff --git a/node_modules/native-base/src/hooks/useKeyboardDismissable.ts b/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
index f3cfa44..1ceedaf 100644
--- a/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
+++ b/node_modules/native-base/src/hooks/useKeyboardDismissable.ts
@@ -44,16 +44,20 @@ export const useKeyboardDismissable = ({ enabled, callback }: IParams) => {
 
 export function useBackHandler({ enabled, callback }: IParams) {
   useEffect(() => {
-    let backHandler = () => {
-      callback();
-      return true;
-    };
+    let subscription: any;
+
     if (enabled) {
-      BackHandler.addEventListener('hardwareBackPress', backHandler);
-    } else {
-      BackHandler.removeEventListener('hardwareBackPress', backHandler);
+      const handler = () => {
+        callback();
+        return true;
+      };
+
+      subscription = BackHandler.addEventListener('hardwareBackPress', handler);
+
+      return () => {
+        subscription?.remove?.(); // ← Este es el nuevo estándar
+      };
     }
-    return () =>
-      BackHandler.removeEventListener('hardwareBackPress', backHandler);
   }, [enabled, callback]);
 }
+

This issue body was partially generated by patch-package.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions