2014-10-18 66 views
0

我使用了$ routeProvider。如你所知,它在應用程序運行之前在配置模塊中初始化。但是在初始化時我不知道用戶類型。加載配置後,應用程序將運行,並在引導程序路徑(加載頁面)中獲取用戶信息。

我的應用有4種用戶類型。我想爲這些不同的類型設置不同的默認路由。

例如;

如果加載的用戶類型是所有者,那麼默認路由必須

$routeProvider.otherwise({ 
    redirectTo: '/ownerdashboard' 
}); 

如果加載的用戶類型爲管理員,則默認路由必須

$routeProvider.otherwise({ 
    redirectTo: '/admindashboard' 
}); 

的$ routeProvider之前就已配置和默認路由已經設置。有沒有可能改變這個值?或者你有什麼想法來解決這個問題?

+0

「否則」功能是$ routeProvider ,而不是$路線。 $ route和$ routeProvider是不同的順便說一句。 – 2014-10-18 17:45:51

回答

0

我解決這樣的使用前端控制器問題:使原本重定向到它,並有內部檢查配置,並在其基礎作出這樣的重定向:

var PATHS={admin : 'admindashboard', owner : 'ownerdashboard'} 
var role = configService.getRoleOfCurrentUser(); 
$location.path(PATHS[role]);