2016-01-23 150 views
0

我想用角路线来改变在页面中使用的控制器
这是我的角码angularjs路线变化控制器

var cat_list = angular.module('getCat', ['ngRoute']); 

cat_list.config(function($routeProvider, $locationProvider) { 
    $routeProvider 
    .when('category/upcoming', { 
     controller: 'getUpcoming' 
    }) 
    .when('category/popular', { 
     controller: 'getPopular' 
    }); 

    $locationProvider.html5Mode(true); 
}); 

cat_list.controller('getUpcoming', ['$scope', function($scope, $routeParams) { 
//controller code goes here 
}); 
cat_list.controller('getPopular', ['$scope', function($scope, $routeParams) { 
//controller code goes here 
}); 

某一部分,这是我的HTML的某些部分

<div class="row" ng-app="getCat"> 
    <div class="col-md-12"> 
     <!-- something happen in here -->   
    </div> 
</div> 

但是当我试图访问http://localhost/project/category/upcominghttp://localhost/project/category/popular路线不工作(没有控制器采摘或选择)

我错过了什么吗?

回答

0

试试这个

var cat_list = angular.module('getCat', ['ngRoute']); 

cat_list.config(['$routeProvider', '$locationProvider', 

等等等等

你能不能也请解释一下你为什么要在同一页上使用不同的控制器?为什么不使用两个不同的部分为即将到来的和受欢迎的创建两个单独的页面?

或者,不同的方法是只使用相同的控制器,并使用适当的指令过滤结果,而不改变每次加载的内容。

0

不得不提ng-view,以便该指令是占位符来替换您对url更改的视图部分。

<div class="row" ng-app="getCat"> 
    <div class="col-md-12"> 
     <div ng-view></div> // ---- This is the thing you missed 
    </div> 
</div>