如何编写没有值的可选属性来显示/隐藏一些块?

时间:2016-07-28 19:26:29

标签: html angularjs

如何编写没有值的可选属性来显示/隐藏某些块?

Demo

例如,当下面的行中存在“showsum”属性时:

<div ng-controller="myCtrl" showsum headers="['Table Header 1', 'Table Header 2']">

我想显示这一行(例如:Sum:12)

<td ng-show="showsum">Sum: {{ getCol1Sum() }}</td>

1 个答案:

答案 0 :(得分:1)

因为ng-show指令接受表达式,所以你不能像在那里那样使用它,

  

ngShow指令显示或隐藏基于的给定HTML元素   表达式提供给ngShow属性。

我不知道你将它定义为属性是什么原因,但你可以做的是创建一个指令

喜欢这样

myApp.directive('showsum ', function() {
   return {
       restrict: 'A', // restrict to an attribute so we can use it as such
       link: function(scope, element, attrs) {
            scope.showsum = true; // set the show sum expression so we can access it in the scope 
       }
   }
})

示例:

http://plnkr.co/edit/mE5LrSMWdIwPRazEdD3b?p=preview

它将为范围创建一个showum属性,你可以用它来做它想要的