Cursos / Informática para Internet / Desenvolvimento para Dispositivos Móveis / Aula
Para coletar dados, utilizaremos uma API que foi desenvolvida na disciplina de Back-end. Porém, poderia ser qualquer API ou ferramenta que exporte dados.
Inicie um novo projeto através do comando abaixo:
expo init ProjectName
Para buscar os dados na API, utilizaremos o fetch. Primeiramente, temos de criar um estado para armazenar as informações.
Veja um exemplo abaixo:
const [posts, setPosts] = useState([])
Criado o estado, precisamos agora implementar uma função que carregue os dados da API. Veja essa implementação abaixo:
const getPostsNaAPI = async () => {
try {
const response = await fetch('https://dev-backend-imd.herokuapp.com/api/posts');
const posts = await response.json()
setPosts(posts.posts)
} catch (error) {
setPosts([])
alert('Falha ao acessar servidor. Tente novamente mais tarde!')
}
}
Após criada a função, precisamos chamá-la em algum momento para que os dados sejam carregados. Para isso utilizaremos o useEffect, que reage a mudanças de estados.
Veja o uso:
useEffect(() => {
getPostsNaAPI()
}, [])
Agora que já temos os dados carregados e armazenados, podemos utilizá-los no aplicativo. Veja abaixo um exemplo de uso em um componente:
<View style={styles.container}>
<Text>{posts.length > 0 ? posts[0].title : 'Não possui postagens carregadas'}</Text>
<StatusBar style="auto" />
</View>
Versão 5.3 - Todos os Direitos reservados