Помогите сделать код синхронным... это функция происходит при клике когда пользователь добавляет новую статью, сначала делаю POST потом GET чтобы без перезагрузки страниц поменялись данные, прочитал про синхронный код про promise немного изучил много попробовал и не получился, помогите решить проблему с $q.
$scope.addNew = function(){
$http({
method: "post",
url: "includes/insert_data.php",
data: {
'title': $scope.notes.title,
'text': $scope.notes.text,
},
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
})
$http.get('includes/get_data.php')
.then(function(response){
$scope.notes = response.data.records;
});
}
Не надо делать этот код синхронным. Надо просто выполнять второй запрос после первого:
$scope.addNew = function () {
$http({
method: "post",
url: "includes/insert_data.php",
data: { title: $scope.notes.title, text: $scope.notes.text },
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function () {
$http.get('includes/get_data.php').then(function (response) {
$scope.notes = response.data.records;
});
});
};
Также можно использовать chain'инг промисов:
$scope.addNew = function () {
$http({
method: "post",
url: "includes/insert_data.php",
data: { title: $scope.notes.title, text: $scope.notes.text },
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function () {
return $http.get('includes/get_data.php');
}).then(function (response) {
$scope.notes = response.data.records;
});
};
Сборка персонального компьютера от Artline: умный выбор для современных пользователей