diff --git a/src/screens/Exercise.tsx b/src/screens/Exercise.tsx index a2312bf..20e7842 100644 --- a/src/screens/Exercise.tsx +++ b/src/screens/Exercise.tsx @@ -21,6 +21,7 @@ type RouteParams = { }; export function Exercise() { + const [isLoading, setIsLoading] = useState(true); const [exercise, setExercise] = useState({} as ExerciseDTO); const navigation = useNavigation(); @@ -35,6 +36,7 @@ export function Exercise() { async function fetchExerciseData() { try { + setIsLoading(true); const response = await api.get(`/exercises/${exerciseId}`); setExercise(response.data); } catch (error) { @@ -48,6 +50,8 @@ export function Exercise() { toast.close(id)} /> ), }); + } finally { + setIsLoading(false); } } @@ -55,10 +59,6 @@ export function Exercise() { fetchExerciseData(); }, [exerciseId]); - if (!exercise.id) { - return ; - } - return ( @@ -80,41 +80,45 @@ export function Exercise() { - - - imagem do exercício + {isLoading ? ( + + ) : ( + + + imagem do exercício - - - - - - {exercise.series} séries - + + + + + + {exercise.series} séries + + + + + + + {exercise.repetitions} repetições + + - - - - {exercise.repetitions} repetições - - - - -