如何在angularJS

时间:2015-07-07 06:47:09

标签: javascript angularjs initialization

我有一个视图,我从角度控制器函数访问范围变量。

$scope.getCurrentTab = function (tab) {
 $scope.yourReportEnabled = (tab === 'REPORTS');
 $scope.currentTab = tab;
}

在视图中,通过将标签名称作为参数传递,我点击了两个锚点getCurrentTab()

这里的范围是函数getCurrentTab中定义的变量,它只在函数调用中初始化。

但是如果我在函数之外定义这些变量gets initialized multiple times

那么有没有办法定义范围variables only once,它将仅由getCurrentTab函数修改。

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果您熟悉$routeProvider服务,这是完成相同任务的简便方法。

JS

angular.module('ForeverLeather').config(['$routeProvider', function($routeProvider) {
  $routeProvider

  .when('/home', {
    templateUrl: 'js/views/home/index.html',
    activetab: 'home'
  })

}]);

HTML

      <li class="nav-home">
        <a id="home-btn" href="#/home" name="home-btn" ng-class="{active: $route.current.activetab == 'home'}">Home</a>
      </li>

使用ng-class确定哪个标签处于活动状态