Javascript 如何在ES6中将对象映射到数组?

Javascript 如何在ES6中将对象映射到数组?,javascript,vue.js,ecmascript-6,Javascript,Vue.js,Ecmascript 6,我有一个名为“url”的对象数组,其中包含每个对象都有“name”和“url”属性。我想将每个对象映射到一个数组。我怎样才能做到这一点 let urls = [{ "name": "regions", "url": context + "ip/region/getAllRegions.do?query=" }, { "name": "sub regions", "url": "context + 'ip/region

我有一个名为“url”的对象数组,其中包含每个对象都有“name”和“url”属性。我想将每个对象映射到一个数组。我怎样才能做到这一点

let urls = [{
        "name": "regions",
        "url": context + "ip/region/getAllRegions.do?query="
    },
    {
        "name": "sub regions",
        "url": "context + 'ip/region/getAllSubRegions.do"
    },
];
this.axiosData = urls.map(t => {
    axios.get(t.url)
        .then(res => {

            if (res.data.responseCode == 1) {
                return res.data.payload;
            } else {

                toastr.error("error retrieving " + t.name, "Failure");
            }
        })
        .catch(err => {
            console.log(err);
        });
});
这里res.data.payload将是一个对象数组,axiosData在Vue实例属性内的数据中定义。我希望“axiosData”是一个数组,它是一个对象数组

axiosData可能如下所示:

[[{
"id": 8,
"name_en": "Rangpur",
}, {
"id": 9,
"name_en": "Sylhet",
}, {
"id": 10,
"name_en": "Mymensingh",
}],


[{
"another_id": 8,

}, {
"another_id": 9,

}, {
"another_id": 10,

}]]

您应该使用Promise.all函数来发出多个请求

让URL=[{
“名称”:“区域”,
“url”:上下文+“ip/region/getAllRegions.do?查询=”
},
{
“名称”:“子区域”,
“url:“context+”ip/region/getAllSubRegions.do”
},
];
this.axiosDataPromises=url.map(t=>{
返回axios.get(t.url)
。然后(res=>{
if(res.data.responseCode==1){
返回res.data.payload;
}否则{
toastr.error(“错误检索”+t.name,“失败”);
}
})
.catch(错误=>{
控制台日志(err);
});
});
Promise.all(this.axiosDataPromises)。然后(resultar=>{
this.axiosData=resultArr;

})
您应该使用Promise.all函数来发出多个请求

让URL=[{
“名称”:“区域”,
“url”:上下文+“ip/region/getAllRegions.do?查询=”
},
{
“名称”:“子区域”,
“url:“context+”ip/region/getAllSubRegions.do”
},
];
this.axiosDataPromises=url.map(t=>{
返回axios.get(t.url)
。然后(res=>{
if(res.data.responseCode==1){
返回res.data.payload;
}否则{
toastr.error(“错误检索”+t.name,“失败”);
}
})
.catch(错误=>{
控制台日志(err);
});
});
Promise.all(this.axiosDataPromises)。然后(resultar=>{
this.axiosData=resultArr;

})
有点不清楚。。。所需数据结构的示例是什么?@robinsax axiosData可能是这样的[[obj1,obj2,obj3….],[other_obj1,other_obj2,other_obj3,…],…],对象包含什么?如果您只想将数组
url
对象推送到axiosData@robinsax我编辑了这个问题希望现在它清楚了,有点不清楚。。。所需数据结构的示例是什么?@robinsax axiosData可能是这样的[[obj1,obj2,obj3….],[other_obj1,other_obj2,other_obj3,…],…],对象包含什么?如果您只想将数组
url
对象推送到axiosData@robinsax我编辑了这个问题希望现在它清楚了,这很有魅力,但我不明白为什么会这样。看来我得重游波米塞了。谢谢,btwworks很有魅力,但我不明白为什么会这样。看来我得重游波米塞了。谢谢,顺便说一句