Мне нужно вызвать метод после того, как получить данные из запроса HTTP POSTУгловое 2: Как вызвать функцию после того, как получить ответ от подписки http.post
услуги: request.service.TS
get_categories(number){
this.http.post(url, body, {headers: headers, withCredentials:true})
.subscribe(
response => {
this.total = response.json();
}, error => {
}
);
}
компонент: categories.TS
search_categories() {
this.get_categories(1);
//I need to call a Method here after get the data from response.json() !! e.g.: send_catagories();
}
работает только если я изменяю:
услуги: request.service.TS
get_categories(number){
this.http.post(url, body, {headers: headers, withCredentials:true})
.subscribe(
response => {
this.total = response.json();
this.send_catagories(); //here works fine
}, error => {
}
);
}
Но мне нужно вызвать метод send_catagories()
внутри компонента после вызова this.get_categories(1);
как этот
компонента: categories.TS
search_categories() {
this.get_categories(1);
this.send_catagories(response);
}
Что я делаю неправильно?
Является ли 'send_catagories()' также используемым наблюдаемым? Если да, вам нужно связать наблюдаемый из get_categories() с адресом в send_categories() с помощью оператора '.mergeMap()'. Дайте мне знать, если вам нужна помощь в синтаксисе. – AngularChef
send_catagories() не использует наблюдаемые, пожалуйста, покажите мне синтаксис: return this.http.post (url, body, {headers: headers, withCredentials: true}) .subscribe ( response => {this.total_page = response .json(); return this.total_page; }, .share() ); } then this.get_category (1) .subscribe (response => { this.callfunc(); }); – Louis
Понял. Я отправил ответ с правильным синтаксисом. – AngularChef