Cómo deshabilitar el gesto de deslizar hacia atrás en reactjsr al browser nativo

Estoy desarrollando una aplicación iOS en Reactivo nativo. He usado el componente Navigator de reaccion nativo. Cuando presiono al usuario de una pantalla a otra, el usuario puede abrir la pantalla deslizando el dedo en el borde izquierdo de la pantalla. Sé cómo deshabilitarlo en el código iOS nativo. Sin embargo, existe alguna forma de que podamos Detener ese comportamiento en la aplicación React-native.

Gracias,

Aquí hay una excelente manera de hacerlo.

¡No necesitas hackear el module de nodos!

Definir una nueva configuration de escena.

const NoBackSwipe ={ ...Navigator.SceneConfigs.HorizontalSwipeJump, gestures: { pop: {}, }, }; 

Puedes copyr cualquier SceneConfig que hayan escrito, y simplemente establecer el gesto de pop en {}.

De esta forma, solo afectará la escena que desee, y también puede usar todas las configuraciones pnetworkingeterminadas.

 _configureScene(route){ switch (route.name){ case 'Foo': return NoBackSwipe break; case 'Bar': return Navigator.SceneConfigs.HorizontalSwipeJump break; } }; 

El HorizontalSwipeJump normal todavía tiene un backswipe, y el NoBackSwipe personalizado no permite volver a deslizar …

 <Navigator ...other props... configureScene={ this._configureScene } /> 

auge.

Lo solucioné a continuación,

En React Project tengo la carpeta node_modules. Hay un código para el componente Navigator en esta ruta,

/node_modules/react-native/Libraries/CustomComponents/Navigator/Navigator.js

En ese file hay acciones para gestos en navigation. Al eliminar el gesto 'pop' de ahí, deja de aparecer cuando se desliza desde el borde izquierdo de la pantalla.

Simplemente reemplaza el código siguiente

 var GESTURE_ACTIONS = [ 'pop', 'jumpBack', 'jumpForward', ]; 

con este código,

 var GESTURE_ACTIONS = [ 'jumpBack', 'jumpForward', ]; 

Las configuraciones de escena son objects con muchas properties inviables. Si desea comenzar con FloatFromBottom y deshabilitar gestos, puede hacer esto:

 configureScene={() => ({ ...Navigator.SceneConfigs.FloatFromBottom, gestures: {}, // or null }) 

El componente debe desmontarse al descartar con un gesto pop.