角度ng-click ng-show停止工作

时间:2016-10-07 18:15:39

标签: angularjs angularjs-ng-click angularjs-ng-show

我有这个小代码片段:

<li ng-if="vm.data.Description" ng-click="expand=!expand">{{vm.data.Description}}</li>
<li ng-if="vm.data.LongDescription" ng-show="expand">{{vm.data.LongDescription}}</li>

vm.data.Description和vm.data.LongDescription包含值。

隐藏了LongDescription,但是当我点击Description时,它变得可见。 我通过将展开标志设置为true或false来进行此类切换。

为什么此代码无效?

1 个答案:

答案 0 :(得分:0)

ng-if使用子范围,这就是为什么你不能链接你的原始变量(展开),所以如果你只需要将expand更改为vm.expand就可以了......

并且你不需要你的ng-show你已经有了ng-if for it ...

<li ng-if="vm.data.Description" ng-click="vm.expand=!vm.expand">{{vm.data.Description}}</li>
<li ng-if="vm.data.LongDescription && vm.expand">{{vm.data.LongDescription}}</li>

这里正在运作PLUNKER

相关问题