Po renderowaniu całej strony w oparciu o kilka kontekstów użytkownika i po złożeniu kilku $http
żądań chcę, aby użytkownik mógł przełączać konteksty i ponownie renderować wszystko ponownie (ponownie wysyłać wszystkie $http
żądania itp.). Jeśli po prostu przekieruję użytkownika w inne miejsce, wszystko działa poprawnie:
$scope.on_impersonate_success = function(response) {
//$window.location.reload(); // This cancels any current request
$location.path('/'); // This works as expected, if path != current_path
};
$scope.impersonate = function(username) {
return auth.impersonate(username)
.then($scope.on_impersonate_success, $scope.on_auth_failed);
};
Jeśli użyję $window.location.reload()
, niektóre z $http
żądań auth.impersonate(username)
oczekujących na odpowiedź zostaną anulowane, więc nie mogę tego użyć. Hack $location.path($location.path())
też nie działa (nic się nie dzieje).
Czy istnieje inny sposób ponownego renderowania strony bez ręcznego wydawania wszystkich żądań?