我正在尝试实现一些指令,它将基于其他Service中一个变量的值。这是我的代码:
if (this.SomeService.variable.condition){
element.show();
} else {
element.hide();
};
但是,当页面被引导时,它只被调用一次。如何使变量,元素显示/隐藏?没有观察者,有没有办法做到这一点?
答案 0 :(得分:1)
您可以使用ng-show / ng-hide作为angularjs构造,用于隐藏或显示特定的HTML片段。
例如:
<div ng-show="true">HELLO I AM THE FIRST DIV</div>
<div ng-hide="true">HELLO I AM THE SECOND DIV</div>
将返回类似
的内容你好我是第一个DIV
在ng-show中你可以输入watherver类型的变量,这样如果你的javascript是这样的:
angular.module('mymodule').controller('MyCtrl',[function(){
var self = this;
self.isVisible = true;
}]);
您可以在代码中使用该变量:
<div class="container" ng-controller="MyCtrl as c">
<div ng-show="c.isVisible">HELLO I AM THE FIRST DIV</div>
<div ng-hide="c.isVisible">HELLO I AM THE SECOND DIV</div>
</div>
结果是一样的