2013-05-27 71 views
0

我正在使用来自Angular首页的选项卡示例。我想有条件地隐藏使用复选框选项(像“显示高级”标签之一....有条件隐藏带有角度的选项卡

<pane title="Pluralization" ng-show="showPlural"> 

我已经在这里建立了一个例子...

http://jsfiddle.net/michaeldausmann/RJEGY/#base 

这不是工作,该选项卡只是无法正确渲染复选框是否打开之前我潜入并重构tabs指令,有没有人已经解决了这个问题?或者是否有一个替代选项卡的实现,我可以尝试?

Michael

回答

1

好吧,我想通了。需要破解指令以在窗格上获取新属性(showtab)。

scope: { 
      title: '@', 
      tabshow: "=" 
     }, 

,然后NG-隐藏的标签模板内的元素...

template: 
    '<div class="tabbable">' + 
     '<ul class="nav {{navclass}}">' + 
     '<li ng-repeat="pane in panes" ng-class="{active:pane.selected}" ng-hide="pane.tabshow==false">'+ 
      '<a href="" ng-click="select(pane)">{{pane.title}}</a>' + 
     '</li>' + 
     '</ul>' + 
     '<div class="{{tclass}} tab-content" ng-transclude></div>' + 
    '</div>', 

和窗格模板

template: 
    '<div ng-hide="tabshow==false" class="tab-pane" ng-class="{active: selected}" ng-transclude>' + 
    '</div>', 

然后在页面中,使用tabshow代替NG-显示..

看看小提琴。

http://jsfiddle.net/michaeldausmann/RJEGY/1/

HTH

迈克尔