我正在加载页面,但页面有条件。如果condition为false,我在另一个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;
}
});
}
答案 0 :(得分:0)
我不是百分之百确定你的意思,但我确实有一些建议可能会有所帮助。
第一个建议是使用$location服务角度提供。然后,您可以使用以下行,而不必保留$ scope.domailurl变量。但是,我假设此路径仍在您的应用程序中。这也可以解决显示默认页面的问题,因为您不再导致整页刷新。
$location.path('/attendeesprint/' + data.ticket);
我的第二个建议是在进行$ http调用之前将 spinnerService.show(' booksSpinner'); 行移至。这将确保您的微调器在异步服务器操作期间显示。