我是棱角分明的新人。
我的问题是, 如果满足'ng-if',是否可以用'ng-show'替换'ng-hide'?
我想根据收到的数据隐藏并显示某个div。它是'true'或'false',如果'false',div应该被隐藏,否则它应该显示。
答案 0 :(得分:1)
可以使用boolean logic:
完成<div ng-show="cond1 && cond2">
One data set
</div>
<div ng-show="cond1 && !cond2">
Other data set
</div>
如果cond1 == false
,两个数据集都将被隐藏。如果true
,则会显示其中一个。
<div ng-show="cond1 && cond2">
One data set
</div>
<div ng-hide="!cond1 || cond2">
Other data set
</div>
答案 1 :(得分:0)
我不清楚你需要实现什么,但也许它会有用:
function Controller (SomeService) {
var vm = this;
vm.firstVisible = false;
vm.secondVisible = false;
SomeService.getData().then(data) {
// firstValidation() function returns true if first way of display is matching
if (firstValidation(data)) {
vm.firstVisible = true;
}
// secondValidation() function returns true if second way of display is matching
if (secondValidation(data)) {
vm.secondVisible = true;
}
}
}
然后在HTML中:
<div>
<div ng-if="vm.firstVisible">
First way of displaying data
</div>
<div ng-if="vm.secondVisible">
Second way of displaying data
</div>
</div>
(故意我不使用$onInit
或其他东西来使事情变得复杂)