angular bootstrap 手风琴是开放范围
angular bootstrap accordion is-open scope
我正在尝试弄清楚如何通过组内的按钮关闭手风琴组。看起来应该很容易。但看起来范围仅在组内定义且不可用在控制器中?在第一个按钮下面的代码片段中,我想如何关闭手风琴组。第二个按钮有效。
这是一个关于我正在做的事情的简单 plunkr 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>
要通过控制器的作用域访问手风琴组的状态,您需要执行如下操作:
将 ng-controller="testCtrl"
移动到 <body>
元素
在控制器范围内明确定义状态:
.controller('testCtrl', function($scope) {
$scope.status = {
isOpen: true
}
$scope.close = function(){
$scope.status.isOpen = false;
};
});
我正在尝试弄清楚如何通过组内的按钮关闭手风琴组。看起来应该很容易。但看起来范围仅在组内定义且不可用在控制器中?在第一个按钮下面的代码片段中,我想如何关闭手风琴组。第二个按钮有效。
这是一个关于我正在做的事情的简单 plunkr 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>
要通过控制器的作用域访问手风琴组的状态,您需要执行如下操作:
将
ng-controller="testCtrl"
移动到<body>
元素在控制器范围内明确定义状态:
.controller('testCtrl', function($scope) {
$scope.status = {
isOpen: true
}
$scope.close = function(){
$scope.status.isOpen = false;
};
});