在Ng-Click上使用Ng-Show显示元素 - 角度

时间:2016-04-08 13:17:19

标签: angularjs

使用下面的代码我试图显示UL元素ng-click但它不起作用。没有任何错误,我也不明白它为什么会这样做。

请你看看并解释错误的原因?

提前致谢!

HTML

<body ng-controller="nsCtrl as ctrl">
    <div class="question">
        Click <span ng-click="ctrl.showTable();">here</span>.
    </div>
    <ul ng-show="self.visible = false">
        <li>List Item</li>
        <li>List Item</li>
        <li>List Item</li>
        <li>List Item</li>
    </ul>
</body>

<script>
    angular.module('snApp', [])
        .controller('nsCtrl', [function(){
            var self = this;

            self.showTable = function(){
                self.visible = true
            }

        }])
</script>

1 个答案:

答案 0 :(得分:1)

罪魁祸首在这里:

ng-show="self.visible = false"

应该是:

ng-show="ctrl.visible === false"

或者,更好:

ng-show="!ctrl.visible"

甚至:

ng-hide="ctrl.visible"

作为旁注:如果visible属性为false,您确定要显示列表吗?您是否可以在控制器中反转测试或分配?