From 9d47ab65b79d6187dddd1a7ffcd3084de26c56cc Mon Sep 17 00:00:00 2001 From: Brian Vaughn Date: Wed, 22 Mar 2017 23:10:58 -0700 Subject: [PATCH] Updated ReactNative findNodeHandle() to handle number case --- src/renderers/native/ReactNativeFiber.js | 5 ++++- src/renderers/native/ReactNativeStack.js | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/renderers/native/ReactNativeFiber.js b/src/renderers/native/ReactNativeFiber.js index 783ae91397dfa..014b4dfa85de8 100644 --- a/src/renderers/native/ReactNativeFiber.js +++ b/src/renderers/native/ReactNativeFiber.js @@ -382,7 +382,10 @@ const ReactNative = { // See NativeMethodsMixin#setNativeProps for more info on why this is done. findNodeHandle(componentOrHandle: any): ?number { const instance: any = findNodeHandle(componentOrHandle); - return instance ? instance._nativeTag : null; + if (instance == null || typeof instance === 'number') { + return instance; + } + return instance._nativeTag; }, render(element: Element, containerTag: any, callback: ?Function) { diff --git a/src/renderers/native/ReactNativeStack.js b/src/renderers/native/ReactNativeStack.js index 37d8b89f561eb..2a5b8f509b707 100644 --- a/src/renderers/native/ReactNativeStack.js +++ b/src/renderers/native/ReactNativeStack.js @@ -37,7 +37,11 @@ var ReactNative = { // The injected findNodeHandle() strategy returns the instance wrapper though. // See NativeMethodsMixin#setNativeProps for more info on why this is done. findNodeHandle(componentOrHandle: any): ?number { - return findNodeHandle(componentOrHandle).getHostNode(); + const nodeHandle = findNodeHandle(componentOrHandle); + if (nodeHandle == null || typeof nodeHandle === 'number') { + return nodeHandle; + } + return nodeHandle.getHostNode(); }, render: render,