我正在尝试调用api,如果返回任何数据,那么我必须显示该数据,否则,我将调用另一个api获取数据。
我有向我获取数据的服务。如果有任何数据,那么我将使用该数据来呈现html文件。但是,如果没有数据,那么我必须调用另一个API来获取数据。
我正在构造函数中调用以下函数。
this.availableDetailsArray = this.getConstactListBySabhaID(this.route.snapshot.params['id']);
以上代码正在调用此函数。
getAvailableSabhaAttendance(id) {
this.contactService.getAttendanceIfAvailable(id).subscribe(data => {
let temp = [];
temp = data.data;
this.availableSabhaDetails = temp;
console.log(this.availableSabhaDetails);
});
return this.availableSabhaDetails
}
如果上面的api中有数据,那我很好。但是,我无法获取此数据以调用另一个api。
第二个函数返回此:
{id: 12, topic_name: "Nishtha", sabha_id: 8, sabha_child_id: 1, speaker_name1: 56, …}
absent_contact: "129"
attendance_id: 10
created_at: "2018-12-27 22:13:31"
id: 12
present_contact: "55,118,122,126,116,58,125,119,132"
sabha_child_id: 1
sabha_date_time: "2018/12/18 - 13:45"
sabha_details: "Video Darshan"
sabha_id: 8
speaker_name1: 56
speaker_name2: 18
topic_name: "Nishtha"
updated_at: "2019-01-13 14:50:42"
__proto__: Object
答案 0 :(得分:1)
在方法 getAvailableSabhaAttendance 中:
getAvailableSabhaAttendance(id) {
this.contactService.getAttendanceIfAvailable(id).subscribe(
data => {
let temp = [];
temp = data.data;
this.availableSabhaDetails = temp;
console.log(this.availableSabhaDetails);
}
,errr => { /* This is the case of error, you can call the 2nd API here */}
,() => {
/* This is the case of finally, you can validate the data here and if the validations fail, call the 2nd API here */
}
);
return this.availableSabhaDetails;
}