簡體   English   中英

遇到Angular.js路線問題

[英]Having trouble with Angular.js routes

下面是我的app.js和controllers.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/我做錯了什么這里? 任何人都可以幫忙嗎?

嘗試這個 :

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 = [];

如上所示,注入應在控制器外部完成。

也許

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM