如果我有此代码:
<accordion-group heading="{{group.title}}" ng-repeat="group in groups"> {{group.content}} </accordion-group>
使用AngularJS,angular-ui和Twitter Bootstrap,是否可以使手风琴在打开时调用某些动作?我知道我不能简单地添加ng- click,因为在将其“编译”为HTML来打开/折叠该组之后,已经使用了它。
ng- click
is-open手风琴组上有一个指向可绑定表达式的属性。当给定的手风琴组打开时,您可以观看此表达式并执行一些逻辑。使用此技术,您可以将标记更改为:
is-open
<accordion-group ng-repeat="group in groups" heading="{{group.title}}" is-open="group.open"> {{group.content}} </accordion-group>
这样您就可以在控制器中准备所需的监视表达式:
$scope.$watch('groups[0].open', function(isOpen){ if (isOpen) { console.log('First group was opened'); } });
尽管上述方法可行,但在实践中使用起来可能有点麻烦,因此,如果您认为可以改进此方法,请在https://github.com/angular- ui/bootstrap中打开一个问题