2012-06-21 84 views
3

有麻煩的是我的app.js和controllers.js文件看起來像:與Angular.js路線

angular.module('RayAuth', ['RayAuth.filters', 'RayAuth.services', 'RayAuth.directives']). 
    config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { 
    $routeProvider. 
     when('/', { 
     templateUrl: 'partials/index.html', 
     controller: IndexCtrl 
     }). 
     when('/users', { 
     templateUrl: 'partials/users.html', 
     controller: UserCtrl 
     }). 
     when('/controlpanel', { 
     templateUrl: 'partials/controlpanel.html', 
     controller: ControlCtrl 
     }). 
     when('/modules/', { 
     templateUrl: 'partials/modules.html', 
     controller: ModuleCtrl 
     }). 
     when('/resources/', { 
     templateUrl: 'partials/resources.html', 
     controller: ResourceCtrl 
     }). 
     when('/privileges/', { 
     templateUrl: 'partials/privileges.html', 
     controller: PrivilegeCtrl 
     }). 
     when('/roles/', { 
     templateUrl: 'partials/roles.html', 
     controller: RoleCtrl 
     }). 
     when('/userroles/', { 
     templateUrl: 'partials/userroles.html', 
     controller: UserRoleCtrl 
     }). 
     otherwise({ 
     redirectTo: '/' 
     }); 
    $locationProvider.html5Mode(true); 
    }]); 

,這是我controllers.js:

'use strict'; 

function IndexCtrl() { 
    IndexCtrl.$inject = []; 
} 

function UserCtrl() { 
    UserCtrl.$inject = []; 
} 

function ControlCtrl() { 
    ControlCtrl.$inject = []; 
} 

function ModuleCtrl() { 
    ModuleCtrl.$inject = []; 
} 

function ResourceCtrl() { 
    ResourceCtrl.$inject = []; 
} 

function PrivilegeCtrl() { 
    PrivilegeCtrl.$inject = []; 
} 

function RoleCtrl() { 
    RoleCtrl.$inject = []; 
} 

function UserRoleCtrl() { 
    UserRoleCtrl.$inject = []; 
} 

我已經加入ng-appng-view我的索引文件,但當我加載它在瀏覽器中,它一直重定向到http://localhost/而不是http://localhost/ray-auth/我在這裏做錯了什麼?任何人都可以幫忙嗎?

回答

1

試試這個:

angular.module('RayAuth', ['RayAuth.filters', 'RayAuth.services', 'RayAuth.directives']). 
    config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { 
    $routeProvider. 
     when('/', { 
     templateUrl: 'partials/index.html', 
     controller: IndexCtrl 
     }). 
     when('/users', { 
     templateUrl: 'partials/users.html', 
     controller: UserCtrl 
     }). 
     when('/controlpanel', { 
     templateUrl: 'partials/controlpanel.html', 
     controller: ControlCtrl 
     }). 
     when('/modules/', { 
     templateUrl: 'partials/modules.html', 
     controller: ModuleCtrl 
     }). 
     when('/resources/', { 
     templateUrl: 'partials/resources.html', 
     controller: ResourceCtrl 
     }). 
     when('/privileges/', { 
     templateUrl: 'partials/privileges.html', 
     controller: PrivilegeCtrl 
     }). 
     when('/roles/', { 
     templateUrl: 'partials/roles.html', 
     controller: RoleCtrl 
     }). 
     when('/userroles/', { 
     templateUrl: 'partials/userroles.html', 
     controller: UserRoleCtrl 
     }); 
    $locationProvider.html5Mode(true); 
    }]); 

我已刪除了,否則,這實際上告訴它在所有其他情況下重定向到「/」。

同樣在一個方面說明,

function PrivilegeCtrl() { 

} 
PrivilegeCtrl.$inject = []; 

如上所示,噴出應控制器外面來完成。

+0

好,謝謝。它現在可以工作,但導航很糟糕。我有模板頁面上的導航欄,但是當我點擊用戶,當我在用戶頁面上,並且想要點擊角色時,它像'用戶/角色/而不是'角色/' – hilarl

+0

@hilarl:對不起,我不明白你想說什麼。你能詳細說明嗎? – ganaraj

0

也許

<!doctype html> 
<html lang="en" ng-app="RayAuth">