[英]getting currently logged in user from sharepoint hosted angular app
[英]Getting user profile in angular after user logged in
在我的應用程序中,每個用戶都有一個特定的配置文件,我創建了一個服務來保存名為currentUser
配置文件。
我使用此配置文件的屬性來呈現網站的標題並進行進一步的api調用。
問題是我何時應該填寫此currentProfile
服務?
有幾種選擇:
1-解決登錄承諾后:
authService.login(username, pass)
.then(function(response) {
userService.getProfile()
.then(function(profile){
currentUser.setProfile(profile);
$state.go('dashboard');
});
});
這種方法的主要問題是,如果用戶位於此url /main/list
並刷新頁面,則currentUser
將被清空。
2-像這里一樣使用ui-router deferIntercept
和urlRouter.sync()
和$urlRouter.listen()
,但是這種方法的主要問題是我的標頭指令和控制器在$locationChangeStart
和currentUser
尚未填寫。
我怎樣才能達到預期效果? 任何想法都得到體現!
編輯 :我不想依靠localStorage或cookie或...。
使用ui-router,它具有resolve屬性,可確保在應用程序繼續之前加載數據。
$stateProvider .state('main.list', { url: "/main/list", templateUrl: "views/custom/index.html", controller:MainController, resolve: { loginUser : function($q){ //load data or whatever return loadData(); } } })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.