2016-07-14 91 views
2

我無法使用ui路由器進行路由。它對ng-route有幫助,所以我一定錯過了一些基本的東西。沒有錯誤,但我沒有任何看法。angular-ui-router不起作用

下面的代碼確實工作(除另有聲明):

angular.module("employeesApp", ["ui.router"]) 
.config(function ($stateProvider, $urlRouterProvider) { 
    $stateProvider 
     .state('employeeList', { 
      url: "/employees", 
      templateUrl: "components/employee_list/employeeListView.html", 
     }); 

    $urlRouterProvider.otherwise("/employees"); 
}); 

下面的代碼不工作:

angular.module("employeesApp", ["ngRoute"]) 
.config(function ($routeProvider) { 
    var employeeListRoute = { 
     templateUrl: "components/employee_list/employeeListView.html" 
    }; 

    var otherwiseRoute = employeeListRoute; 

    $routeProvider 
     .when("/employeeList", employeeListRoute) 
     .otherwise(otherwiseRoute); 

這裏是我的index.html(省略不相關元素):

<!DOCTYPE html> 
<html lang="en" ng-app="employeesApp"> 
<head> 
    <title></title> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js"></script> 

    <script src="app.route.js"></script> 
    <script src="components/employee_list/employeeListCtrl.js"></script> 
</head> 
<body> 
    <div> 
     <ng-view /> 
    </div> 
</body> 
</html> 

我在做什麼w rong在嘗試使用ui-router時?

+0

在控制檯中的任何錯誤被加載到獲得路由器?你有沒有包含'angular-ui-router.js'? –

+0

@Pankaj Parkar在控制檯中沒有錯誤,並且我包含了angular-ui-router.js。作爲證明:其他聲明確實起作用。 – Alon

+2

您很有可能錯過了ui-view指令:'

'。你有在任何地方加載視圖的'ui-view'嗎? –

回答

3

正如@AminMeyghani已經說了,你應該使用的ui-view代替ng-view指令知道,相對應視圖裏面ui-view指令

<div> 
    <ui-view></ui-view> 
</div> 

Demo here