angular - 修改 Angular 服务中的 api 响应
问题描述
我正在尝试通过 API 请求修改响应返回。现在我得到的回应是
[
{
name: "Afghanistan"
},
{
name: "Åland Islands"
}
]
我想将其修改为:
[
{
name: "Afghanistan",
name1: "Afghanistan",
name2: "Afghanistan"
},
{
name: "Åland Islands",
name1: "Åland Islands",
name2: "Åland Islands"
}
]
我正在尝试复制名称字段并创建新字段,例如:name1,name2 in same object。这是工作项目https://stackblitz.com/edit/angular-8bzcdp 任何人都可以帮助
解决方案
您可以将方法更改为:
getRecords() {
return this.http.get('https://restcountries.eu/rest/v2/all').pipe(
map((res: any[]) => {
const data = res.map(obj => ({
name: obj.name,
name1: obj.name,
name2: obj.name
}));
return data;
})
);
}
在生成的响应数组 ( res[]
) 上,我们根据您的条件将每个元素映射到一个 json 对象并返回新创建的 json 对象。
推荐阅读
- graph - 针对特定问题优化 dijkstra 算法
- reactjs - 反应 onclick 监听器
- c++ - 如何修复'=='操作数中比较周围的建议括号
- database - 如何合并这两个 MDB 数据库
- javascript - 在 Node 应用程序中使用 AND 使用 Knex.js 构造内部连接
- azure-devops - 如何在 Azure 管道上仅在 PR 上而不是在合并后触发构建?
- html - 带有“向左浮动”的框的 Flex wrap 布局 - 使最后一行框的宽度与其余框相同
- regex - 有没有办法有条件地替换字符串中的第一个'/'?
- reactjs - 报错找不到:POST http://localhost:8000/api/submit
- sql-server - 字段有前导零,在“UNION ALL”后被删除