我有一个相当简单的角度应用程序(在MEAN堆栈上工作)没有使用ui-router(我现在想保持这种方式)。
我想知道分享用户的最佳方式是什么"登录"整个应用程序的状态是。
例如,我想要一个指示来显示"注册或登录"如果用户未登录,或者"您好,用户名"如果用户已登录。
在我的应用程序中,许多指令引用了登录状态,因此似乎使用多个控制器并在每个控件上声明登录的$scope
属性并不是最好的选择。我怎么能做到这一点?
作为后续行动,有关了解用户是否登录的最佳方法的任何建议?现在我将它基于存储在本地存储中的auth-token
,但它也可能是cookie。
我想知道一种最佳实践方式,我可以存储的不仅仅是用户的登录状态,还有他们的信息(名称,挑选的项目等)并保持同步到我的服务器(因此,如果他们登录另一台计算机,他们的购物车将继续存在。)
由于
答案 0 :(得分:0)
写一项服务:
angular.module('myApp')
.service('Auth', function() {
var loggedInState = {}; // log in state data
var logIn = function() {
// send log in request
}
return {
state: loggedInState,
logIn: logIn
}
})
现在,您可以在任何想要知道的地方注入此服务,并检查状态