我是Angular的新手,現在我只是試圖讓我的所有路線都按照我的意願進行設置和工作。用戶登錄後重定向
設置: 當用戶瀏覽某些網頁(/settings
在這個例子中)的應用程序應檢查是否有已經登錄的用戶如果繼續像往常一樣。否則,用戶應該轉到登錄頁面(/login
)。
我想什麼: 用戶成功登錄後,在他們應該去他們最初試圖去(/settings
)
我的問題頁面: 是否有一個「有角度的方式「來記住用戶試圖去的地方?
相關代碼:
app.js
.when('/settings', {
templateUrl: '/views/auth/settings.html',
controller: 'SettingsCtrl',
resolve: {
currentUser: function($q, $location, Auth) {
var deferred = $q.defer();
var noUser = function() {
//remember where the user was trying to go
$location.path("/login")
};
Auth.checkLogin(function() {
if (Auth.currentUser()) {
deferred.resolve(Auth.currentUser());
} else {
deferred.reject(noUser());
}
});
return deferred.promise;
}
}
})
login.js
$scope.submit = function() {
if(!$scope.logInForm.$invalid) {
Auth.login($scope.login, $scope.password, $scope.remember_me)
//go to the page the user was trying to get to
}
};
許多感謝約翰·林德奎斯特爲the video這讓我這麼遠。
您可以將此信息存儲在$ rootScope中或存儲在[service](http://docs.angularjs.org/guide/dev_guide.services)中。 – 2013-03-07 01:24:19