【发布时间】:2021-08-22 06:09:05
【问题描述】:
我正在调用两个不同的服务并得到不同的响应。 但我想在安排两个服务的响应后建立一个公用表。
以下是我的服务
getUsersForAdmin() {
this.budgetaryUnitService.getUserList('Budget Administrator').subscribe(response => {
this.adminData = response;
this.getUsersForViewer();
});
}
getUsersForViewer() {
this.budgetaryUnitService.getUserList('Budget Viewer').subscribe(response => {
viewerData = response;
this.buildData(viewerData);
this.buildRolesTable(response);
});
}
buildData(this.adminData,viewerData){
console.log(this.adminData,"Admindata");
console.log(viewerData,"viewerData");
}
我在 AdminData 中得到以下响应。
var adminData = {
"limit": 10,
"start_offset": 0,
"size": 2,
"response": [
{
"userid": "mabasore@us.ibm.com",
"firstname": "Murphy",
"lastname": "Basore",
"userstatus": "Active"
}
]
}
我在 viewerData 中得到以下响应。
var viewerData = {
"limit": 10,
"start_offset": 0,
"size": 2,
"response": [
{
"userid": "harinissb@us.ibm.com",
"firstname": "H",
"userstatus": "Active"
},
{
"userid": "tarnold@us.ibm.com",
"firstname": "Twana",
"userstatus": "Active"
}
]
};
预期输出
如果我有 AdminData 然后是 'name': 'Admin',并且需要准备管理员响应。 如果我有 ViewerData 然后 'name': 'Viewer',需要准备 Viewer 响应。
export const rolesData = {
'limit': 10,
'start_offset': 0,
'result': [
{
'name': 'Admin',
'response': [
{
"userid": "mabasore@us.ibm.com",
"firstname": "Murphy",
"lastname": "Basore",
"userstatus": "Active"
}
]
},
{
'name': 'Viewer',
'response': [
{
"userid": "harinissb@us.ibm.com",
"firstname": "H",
"userstatus": "Active"
}
]
}
]
};
【问题讨论】:
-
将
adminData和viewerData连接到rolesData,limit 和start_offset 怎么样?假设adminData有 5 个项目,rolesData有 6 个项目,基于limit,它是否应该只显示来自adminData的 5 个项目和来自rolesData的 5 个项目?我建议不要在前端执行此逻辑,为什么不在后端服务中实现 API 以查询和返回与您所需的 JSON 输出模式匹配的不同类型的数据。 -
我们暂时不需要限制和偏移...跳过这个
标签: javascript angular angular8