简体   繁体   中英

Axios params returns data inside an object instead of array

When using axios.get without the params all data is returned inside of array like it is supposed to be, but when I use params all objects are returned inside an object and I'cant map it. How can put all objects inside of array? If I try to put it inside of array it only puts the object that contains all the objects I need.

     axios.get('http://api.digiart.lt/items/',
        { params: 
            { category:"latte" }} )
    .then(response => {
        let coffee = response.data;
        this.props.onLoadData(coffee);
        console.log(response.data);

returns like this

{…} ​ count: 10 ​ items: Object { 0: {…}, 2: {…}, 3: {…}, … } ​ : Object { … }

supposed to be like this

Array(41) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]

That's the default response from the http://api.digiart.lt/items/ API

Use Object.keys to map it to an array.

 // Request -> http://api.digiart.lt/items?category=latte var response = { "items": { "0": { "title": "Abbey's White Chocolate Latte", "description": "I created this recipe for my little sister, Abbey, who`sa latte fanatic. She was blown away, and drained it to the last drop! This makes one VERY large, indulgent latte, and could probably serve two. Enjoy!\\n\\nIngredients:\\n1 1\\/2 cups milk\\n1 tablespoon heavy cream\\n1\\/8 teaspoon vanilla extract\\n1 tablespoon white sugar\\n1\\/2 cup brewed espresso\\n1\\/4 cup white chocolate chips, chopped", "url": "https:\\/\\/www.allrecipes.com\\/recipe\\/137332\\/abbeys-white-chocolate-latte\\/", "category": "latte", "date": "2018-05-31", "img": "https:\\/\\/images.media-allrecipes.com\\/userphotos\\/560x315\\/2107268.jpg" }, "2": { "title": "Brown Sugar-Caramel Latte", "description": "Sometimes coffee is a dessert in itself. This is one of my favorite morning treats to make a Monday seem less intimidating. You'll need a battery-powered milk frother or it's just not the same.\\n\\nIngredients:\\n1 tablespoon brown sugar\\n1\\/4 cup half-and-half\\n1 tablespoon caramel ice cream topping\\n3\\/4 cup hot, brewed coffee", "url": "https:\\/\\/www.allrecipes.com\\/recipe\\/139119\\/brown-sugar-caramel-latte\\/", "category": "latte", "date": "2017-08-22", "img": "https:\\/\\/images.media-allrecipes.com\\/userphotos\\/560x315\\/707064.jpg" } // .. More items } } var arr = [] Object.keys(response.items).forEach(key => arr.push(response.items[key])) console.log(arr) 

try this

axios.get('http://api.digiart.lt/items/',
        { params: 
            { category:"latte" }} )
    .then(response => {
        let coffee = Object.keys(response.items).map(i => response.items[i])

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM