angularjs在主模板中设置了一个更好的方法

时间:2013-10-09 19:13:32

标签: angularjs

在我的主模板中

<body data-ng-controller="MainCtrl">
<div id="container" data-ng-class="{home: home}">

在我的控制器中

.controller('MainCtrl',function($scope,$location) {
       $scope.$on('$routeChangeSuccess', function (scope, next, current) {
        if($location.path()==='/'){
          $scope.home = true;  
        }
        else{
          $scope.home = false;  
        }
}

我的目标是仅在路由器运行时设置一个类 IndexCtrl

.config(function (CONFIG,$routeProvider) {
    $routeProvider
    .when('/', {
        templateUrl: CONFIG.site.path_views + '/index/index.html',
        controller: 'IndexCtrl'
   })
}

我想知道是否有更好的方法。

1 个答案:

答案 0 :(得分:1)

你可以这样做:

在MainCtrl中:

$scope.$location = $location;

在HTML中:

<div id="container" data-ng-class="{home: $location.path()==='/'}">

然而,这将导致对$ location.path()的连续调用。您的方法浪费了更少的处理能力。