Tengo una vista de lista en una pantalla (en mi caso, una pestaña) y si vuelvo a seleccionar la pestaña (que ya está seleccionada), se crea una instancia de un nuevo componente.
Por ejemplo, si desplazo la lista y luego toco el botón de tabulación, el desplazamiento irá a la parte superior. Solo sucede la primera vez, por lo que si tocas el botón de pestaña nuevamente, no sucederá nada (y ese es el comportamiento esperado, supongo).
Lo mismo sucede "a veces" (no sé exactamente cuándo) cuando se mueve dentro de las escenas y no creo que eso sea lo que debería suceder porque perderá el estado de los componentes anteriores.
Versiones que estoy usando:
Con react-native-router-flux v3.37.0 funciona como se esperaba (sin volver a renderizar la pantalla), por lo que parece un error con v3.38.0 o sus dependencias.
Sí, enfrentando el mismo problema, volviendo a 3.37.0
Me enfrento al mismo problema incluso en 3.37
Puedo confirmar que el problema desaparece en 3.37.0 pero existe en 3.38.0.
@ sk15973
Asegúrese de reiniciar el empaquetador react-native después de haber instalado un nuevo paquete.
Y también asegúrese de utilizar componentDidMount / componentWillMount / componentWillReceiveProps en consecuencia, y no haga muchos cambios innecesarios en el estado.
El mismo problema aquí.
@ sk15973 En su package.json
, asegúrese de que su dependencia react-native-router-flux
no incluya el símbolo de intercalación (^):
"dependencies": {
"react-native-router-flux": "3.37.0", // Good
"react-native-router-flux": "^3.37.0", // Bad
}
Con el símbolo de intercalación, en realidad usará v3.38.0 cuando haga un npm install
. Esto se debe a que react-native-router-flux
parece haber roto semver al introducir un cambio de comportamiento en una versión menor.
Por favor, perdóneme @aksonov por etiquetarlo, pero creo que esto es algo serio porque el signo de intercalación ^ se inserta de manera predeterminada cuando se usa npm install react-nativer-router-flux --save
. Con el tiempo, los usuarios de esta biblioteca pueden encontrarse en problemas crípticos después de hacer npm install
nuevos. Pero lo entiendo totalmente si no tienes tiempo :)
Me enfrento al mismo problema en 3.38
@jonrh gracias, no me había dado cuenta y ahora funciona bien
@EmiPC @jonrh ¿Este error se resolvió en 3.39.1 ???
@iiitmahesh Lamentablemente no lo sé. La versión 3.37.0 es la última que usaré de esta biblioteca, migrando a React Navigation.
Comentario más útil
Con react-native-router-flux v3.37.0 funciona como se esperaba (sin volver a renderizar la pantalla), por lo que parece un error con v3.38.0 o sus dependencias.