Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

141
Vistas
Quiero agregar una barra de progreso para cambiar de una pantalla a otra

Estoy trabajando en una aplicación de reacción. Tiene funciones de autenticación simples. El problema es que después de que un usuario se registra, se ve obligado a esperar de 6 a 9 segundos antes de que se cargue la página de destino.

Por ese motivo, quiero agregar una barra de progreso como ventana emergente después de que el usuario haga clic en el botón REGISTRARSE para notificarle que la página se está cargando.

 const handlePress = () => { if (!firstName) { Alert.alert("First Name is required"); } else if (!phone) { Alert.alert("Phone Number is required."); } else if (!email) { Alert.alert("Email Field is required."); } else if (!password) { Alert.alert("Password Field is required."); } else { registration(email, password, phone, firstName); navigation.navigate("Welcome"); emptyState(); } }; <TouchableOpacity style={styles.button} onPress={handlePress}> <Text style={{ fontWeight: "bold", color: "#fff", fontSize: 18 }}> {" "} Sign Up </Text> </TouchableOpacity>

Alguien Ayuda. Relativamente nuevo para reaccionar y JS.

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Si desea una barra de progreso, la función de registro necesitará alguna modificación. Necesitará un parámetro adicional onProgress . También deberá realizar un seguimiento del porcentaje de finalización y actualizar este porcentaje cada vez que se alcance un hito:

 function registration(email, password, phone, firstName, onProgress){ let progress = 0; const updateProgress = newVal=>{ progress+=newVal; onProgress(progress) } // when a milestone is reached call updateProgress eg // connected to auth service updateProgress(0.2); // verified user email doesnt exist updateProgress(0.1) // createdNewUser updateProgress(0.7) */ }

Ahora desea crear una variable de progreso y elegir su componente de barra de progreso

 import * as Progress from 'react-native-progress'; export default function App({navigation}){ const [ progress, setProgress ] = useState(0); const [ isLoading, setIsLoading ] = useState(false); const handlePress = () => { if (!firstName) { Alert.alert("First Name is required"); } else if (!phone) { Alert.alert("Phone Number is required."); } else if (!email) { Alert.alert("Email Field is required."); } else if (!password) { Alert.alert("Password Field is required."); } else { setIsLoading(true); registration(email, password, phone, firstName, setProgress). then(()=>{ setIsLoading(false) }) navigation.navigate("Welcome"); emptyState(); } }; return( <TouchableOpacity style={styles.button} onPress={handlePress}> <Text style={{ fontWeight: "bold", color: "#fff", fontSize: 18 }}> {" "} Sign Up </Text> {isLoading && <Progress.Bar progress={progress} />} </TouchableOpacity> )

Pruébalo aquí

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda