0
如果用戶鍵入不存在的url,我需要將「登錄」用戶重定向到主頁。我有一個名爲「authService」的服務,我可以檢查user auth == true
或false
。如果輸入不存在url將用戶重定向到主頁
我使用$STATE.GO
重定向到登錄頁面,如果用戶不是授權(authService.auth == false
)。
app.config(['$stateProvider', '$urlRouterProvider', '$locationProvider', '$httpProvider',
function ($stateProvider, $urlRouterProvider, $locationProvider) {
$urlRouterProvider.otherwise(function ($injector, $location) {
var $state = $injector.get("$state");
$state.go("login");
});
}]);
現在我要讓類似於用戶重定向到主頁,當用戶auth == true
。當用戶使用令牌時,嘗試輸入不存在的URL,重定向到主頁。
我嘗試通過注入authService服務來做到這一點,並使if/else。 但這不是工作,因爲我得到一個錯誤
Error: $injector:unpr Unknown Provider Unknown provider: authService
app.config(['$stateProvider', '$urlRouterProvider', '$locationProvider', '$httpProvider', 'authService',
function ($stateProvider, $urlRouterProvider, $locationProvider, authService) {
if (authService.auth == false) {
$urlRouterProvider.otherwise(function ($injector, $location) {
var $state = $injector.get("$state");
$state.go("login");
});
}
else {
$urlRouterProvider.otherwise(function ($injector, $location) {
var $state = $injector.get("$state");
$state.go("home");
});
}
}]);
這是不好解決?我可以將自定義服務注入到app.config嗎?有人可以幫我嗎?
謝謝。