У меня есть два компонента, и мне нужно показать одни и те же данные в обоих компонентах. Моей служба:Общие сведения об услугах с обещаниями
export default class Logs {
constructor($http, $q, httpService) {
this.$http = $http;
this.$q = $q;
this.$rootScope = $rootScope;
this.httpService = httpService;
this.logs = null;
this.getDefer = this.$q.defer();
this.loadData();
}
loadData() {
var request = {url: '/logs'};
this.httpService.getJson(request)
.then((response) => {
this.logs = response.data;
this.getDefer.resolve(this.logs);
})
.catch((err) => {
this.getDefer.reject(err);
});
return this.getDefer.promise;
}
getLogs() {
return this.getDefer.promise;
}
create(newLog) {
return this.$http.post('http://localhost:9000/api/logs', newLog);
}
}
// this is example of using service in component
this.logService.getLogs().then((result) => {
this.logs = result;
});
Я использую обещание, потому что, getLogs
используется в нескольких компонентах и помогает мне избежать двойного запроса о запуске приложения. Но теперь, мне интересно, как я могу позвонить getLogs
для получения новых данных после обновления или создания?
Спасибо, это то, что мне нужно – user348173
Добро пожаловать :) – Kindzoku