Я загружаю страницу, но страница имеет условие. Если условие является ложным, я перенаправляю url, используя $ window.location.href на другом URL-адресе, но перед перенаправлением на другой URL-адрес страницы по умолчанию отображается сначала, а затем перенаправляется другой URL-адрес, который не выглядит хорошим. Я так смущен, что делать. Пожалуйста, дайте мне какое-нибудь решение.
function get_bookings() {
$http.post($scope.domailurl + 'api/class/booking.php?action=get_booking', { 'id': urlid }).success(function(data, status) {
spinnerService.show('booksSpinner');
if (data.ticket && data.ticket != "") {
$window.location.href = $scope.domailurl + '#/attendeesprint/' + data.ticket;
}
});
}
Я не уверен на 100%, что вы имеете в виду, но у меня есть несколько предложений, которые могут помочь.
Первое предложение будет использовать угловое обеспечение службы $ location. Затем вы можете использовать следующую строку вместо того, чтобы сохранять переменную $ scope.domailurl. Тем не менее, я предполагаю, что этот путь все еще находится в вашем приложении. Это также может устранить ваши проблемы со страницей по умолчанию, потому что вы больше не вызываете обновление полной страницы.
$location.path('/attendeesprint/' + data.ticket);
Моим вторым предложением было бы переместить spinnerService.show('booksSpinner'); до того, как вы сделаете $ http-вызов. Это позволит убедиться, что ваш счетчик показывается во время операции асинхронного сервера.