TransWikia.com

Axios: params em GET não funciona - React Native

Stack Overflow em Português Asked by Joseph Isaac on January 2, 2022

Tenho um banco de dados em mongo com clientes e estabelecimentos.

Quero recuperar os estabelecimentos filtrados por categoria. Meu código está assim:

const [datas, setDatas] = useState([]) //recupera os dados
const [category, setCategory] = useState('tecnologias') //recupera a categoria selecionada

async function loadDatas(){
   await api.get('/user/read/establishment', {params:{category: category}})
}
.
.
.
{datas.map(d =>(
    <View style={styles.view}>
        <TouchableOpacity onPress={()=>navigation.navigate('Establishment')}>
            < Card title={d.nameEstablishment} time={d.sunday} chave={d._id}/>
        </TouchableOpacity>
    </View>
    ))
}

em params:{category:category} o primeiro category é metadado da tabela estabelecimento do banco de dados e o segundo, é o que eu recebo do React-Native com um toque na tela.

Ele não funciona no app, mas no insomnia sim, por mais que eu tenha visto esse exemplo no site oficial. Estou criando uma gambiarra e fazendo várias rotas, porém fica inviável, porque terá uma hora em que os produtos serão mostrados por categoria e essa não será estática, mas dinâmica (cada estabelecimento com as suas).

One Answer

 async function loadDatas(){
    const res = await api.get('/user/read/establishment',{ <-- add 
        params:{
            category: "tecnologias" <-- coloca aspas e muda o nome
        }
    })
   setCategory(res.data) <-- add, "res.data" vai depender de como que você está retornando
}

seguindo um exemplo como o meu --->

async function handleTipo(){
    const res = await api.get('/S881TT75a8s5AaAo2iYtR',{
        params:{
            tipo:'Pasta'
        }
    });
    // console.log(res)
    setDocs(res.data.sens)
}

Answered by Serginho junio on January 2, 2022

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP