如何在Angular Controller中写条件

时间:2016-11-12 18:36:06

标签: angularjs if-statement

有两种按钮,让我们说第一组和第二组。在第一组中有2个按钮,在第二组中有3个按钮。这些按钮中的每一个都应该发送唯一的ID。现在问题是如何检索按钮' id以及如何指定以下条件? 例如,如果第一组中的button1处于活动状态,并且第二组中的button2处于活动状态,则执行某些操作,依此类推。 该条件将基于这两个群体之间的行动来应用。

以下是一个例子:

    <!-- group one -->
<div ng-controller = "btnCtrl as bc">
<ul class="nav nav-pills" role="tablist" ng-init="selectedTab = 'btn1';">
    <li class="nav-item">
         <a class="nav-link btn" role="button" ng-class="{'active':selectedTab === 'btn1'}" ng-click="selectedTab = 'btn1';">btn1</a>
    </li>
    <li class="nav-item">
         <a class="nav-link btn" role="button" ng-click="selectedTab = 'btn2';" ng-class="{'active':selectedTab === 'btn2'}">btn2</a>
    </li>
</ul>
    <!-- group two -->
    <div ng-cloak>
        <div class="row">
             <div class="col-sm-6" ng-repeat="btn in bc.btn" ng-click="bc.select('id',$index);" ng-class="{active: $index == bc.selected}">
             <p role="button"><span ng-bind="btn.name"></span></p>
             </div>
        </div>
    </div>

and here's the controller:
bc.btn = [
                  {
                      'id': 1,
                      'name': 'item1',
                  },
                  {
                      'id': 2,
                      'name': 'item2',
                  },
                  {
                      'id': 3,
                      'name': 'item3',
                  }
        ];
bc.selected = 0;
bc.select = function (id,index) {
    bc.selected = index;
}

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题,

可以根据应用程序的需要使用localStorage或sessionStorage来实现结果。因此,通过将一个函数分配给第一组中的每个按钮并将每个按钮的id存储在第二组中,然后根据条件可以检索特定的id。