Traté de hacer algo como esto usando React Navigation donde
useFocusEffect(useCallback(() => { return () => saveFormAsync(formData) }, []));
saveFormAsync
es un método async
que devuelve Promise<void>
.
Parece funcionar, pero no estoy seguro de si estoy manejando todos los casos.
Observé React 16 ya que React 17 llama a las funciones de limpieza de forma asíncrona