角度自举手风琴是开放范围

时间:2016-05-20 21:59:53

标签: angularjs angularjs-scope angular-ui-bootstrap bootstrap-accordion

我正在试图弄清楚如何从组内的按钮关闭一个手风琴组..看起来应该很容易..但看起来是只在组内定义的范围并且在控制器?在第一个按钮下方的代码片段中,我是如何关闭手风琴组的。第二个按钮有效。

以下是我正在处理https://plnkr.co/edit/bghRaioszH3SZmiWxcoH?p=preview

的简单说明
 <uib-accordion close-others="true" ng-controller="testCtrl">
      <uib-accordion-group panel-class="panel-primary" is-open="status.isOpen">
        <uib-accordion-heading>
        Open: {{ status.isOpen }}
        <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.isOpen, 'glyphicon-chevron-right': !status.isOpen}"></i>
        </uib-accordion-heading>
      <button class="btn btn-warning" ng-click="close()">Cancel</button>
      <button class="btn btn-warning" ng-click="status.isOpen=!status.isOpen">Cancel</button>
  </uib-accordion-group>
    </uib-accordion>

1 个答案:

答案 0 :(得分:1)

要通过控制器范围访问手风琴组的状态,您需要执行以下操作:

  1. ng-controller="testCtrl"移至<body>元素

  2. 在控制器范围内明确定义状态:

  3. .controller('testCtrl', function($scope) { $scope.status = { isOpen: true } $scope.close = function(){ $scope.status.isOpen = false; }; });