Home > Mobile >  React Native how to get only some data from api
React Native how to get only some data from api

Time:06-29

Given url Data==> need to get only Karnataka state details [{"id":1,"title":"TELANGANA","image":"url","stateCode":"TS"},{"id":4,"title":"TAMILNADU","image":"url","stateCode":"TN"},{"id":3,"title":"KARNATAKA","image":"url","stateCode":"KN"},{"id":2,"title":"ANDHRA","image":"url","stateCode":"AP"}]

Here code to get data===>

const [states, setStates] = useState([]);

useEffect(() => {
    handleGetStates()
}, []);


const handleGetStates = async () => {
    let values = {
        url: `url`,
        method: 'get',
        
    }
    try {
        const response = await axios(values)
        setStates(response.data)
        console.log(response.data,'response');
    } catch (error) {
        // handle error
        console.log(error);
    }
};

CodePudding user response:

You can filter on the array returned from the API:

...
const response = await axios( values );
setStates( response.data.filter(state => state.title === 'KARNATAKA' );

// result: [ {"id":3,"title":"KARNATAKA","image":"url","stateCode":"KN"} ]
...

This will loop through the response and only keep states that have a title of "KARNATAKA"

CodePudding user response:

You can use an array filter method


const {data} = await axios(values);

const result = data?.filter(el=>el.stateCode==='KN')

  • Related