当用户输入正确的用户名和密码时,我想重定向到另一个位置。但是当我在这里使用$ location.path(‘dashboard’)时,浏览器的URL被更改,但该页面没有加载。当使用ctrl R刷新I页面或单击浏览器的刷新图标时,加载适当的页面。
$http.post('/login',$scope.userInfo) .success(function (data) { //Check if the authentication was a success or a failure //Successful POST here does not indicate success of authentication if (data.status === "authentication success") { //Proceed to load the dashboard for the user $location.path('/dashboard'); } else if (data.status === "authentication error") { //Inform user of the error $scope.errorMessage = data.error; $scope.showErrorMessage = true; } }) .error(function (error) { $scope.errorMessage = "Error while attempting to authenticate. Check log."; $scope.showErrorMessage = true; }); }; }]);
你试过使用$ scope吗?例如。:
if(!$scope.$$phase) $scope.$apply()
这种简短的方法也很方便: