Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Написание корректной функции в JavaScript

Денис Сергеев Ученик (135), на голосовании 12 месяцев назад
Необходимо, чтобы функция отрабатывала только при наличии данных (если их нет, то сервер возвращает 404 ошибку, чего быть не должно). Заранее спасибо!

var loadAutos = function () {
$http.get('/autos').then(function (response) {
$ scope.autos = response.data;
});
};

loadAutos();
Голосование за лучший ответ
SCCM Ученик (227) 1 год назад
var checkData = function() { return Promise.resolve(); };

if ($scope.autos) {
checkData().then(loadAutos);
} else {
loadAutos();
}

В этом случае, если $scope.autos существует, функция checkData возвращает обещание немедленно, которое затем разрешается, вызывая loadAutos. Если $scope.autos не существует, loadAutos вызывается напрямую, и ошибка 404 не возникает.
Похожие вопросы