我已成功向服务器发出POST
请求,并且我返回了用户对象。以下服务是发出请求的原因。
我不明白我可以在哪里路由到仪表板。
/**
* Authentication service via medium post Service
*
*/
.factory('AuthService', function ($http, Session, ApiEndpoint) {
var authService = {};
authService.login = function (credentials) {
console.log(credentials)
return $http
.post('/api/login', credentials)
.then(function (res) {
console.log(res.data);
Session.create(res.data._id, res.data.email);
return res.data;
});
};
authService.signup = function (credentials) {
console.log(credentials.username)
return $http
.post('/api/signup', credentials)
.then(function (res) {
console.log(res.data);
Session.create(res.data._id, res.data.email);
return res.data;
});
};
authService.isAuthenticated = function () {
return !!Session.userId;
};
authService.isAuthorized = function (authorizedRoles) {
if (!angular.isArray(authorizedRoles)) {
authorizedRoles = [authorizedRoles];
}
return (authService.isAuthenticated() && authorizedRoles.indexOf(Session.userRole) !== -1);
};
return authService;
})
我已停用查看信息中心
.state('tab.dash', {
url: '/dash',
views: {
'tab-dash': {
templateUrl: 'templates/tab-dash.html',
controller: 'DashController'
}
},
resolve: {
auth: function resolveAuthentication(AuthResolver) {
return AuthResolver.resolve();
}
}
})
使用我在Medium帖子上找到的AuthResolver
服务
/**
* AuthResolver service via medium post Service
*
*/
.factory('AuthResolver', function ($q, $rootScope, $state) {
return {
resolve: function () {
var deferred = $q.defer();
var unwatch = $rootScope.$watch('currentUser', function (currentUser) {
if (angular.isDefined(currentUser)) {
if (currentUser) {
deferred.resolve(currentUser);
} else {
deferred.reject();
$state.go('user-login');
}
unwatch();
}
});
return deferred.promise;
}
};
})
所以我得到了大部分内容,但我无法解码实际路由到仪表板的位置?
我正在从backbone.js / marionette.js迁移并且昨天拿起angular.js大声笑所以我是新手,我正在建立离子并且想要利用那个堆栈所以我想看看我能有多快获得角度的.js