我是新角度。使用角度替換屬性
我的問題是, 如果'ng-if'滿足,是否可以用'ng-show'替換'ng-hide'?
我想根據收到的數據隱藏和顯示某個div。它的'真'或'假',如果'假'div應該被隱藏,否則它應該顯示。
我是新角度。使用角度替換屬性
我的問題是, 如果'ng-if'滿足,是否可以用'ng-show'替換'ng-hide'?
我想根據收到的數據隱藏和顯示某個div。它的'真'或'假',如果'假'div應該被隱藏,否則它應該顯示。
目前尚不清楚對我來說,你需要達到什麼樣的,但也許這將是有益的:
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
或其他東西不要使事情變得複雜)
它可以用boolean logic完成:
<div ng-show="cond1 && cond2">
One data set
</div>
<div ng-show="cond1 && !cond2">
Other data set
</div>
這兩個數據集將被隱藏,如果cond1 == false
。如果true
,其中一個或另一個將顯示。
或者使用De Morgan's Theorem:
<div ng-show="cond1 && cond2">
One data set
</div>
<div ng-hide="!cond1 || cond2">
Other data set
</div>
該解決方案非常有幫助。謝謝! –
有什麼用'NG-if' /'NG-show'本身的問題..?你的問題似乎不清楚 –
...你不應該需要。如果您希望元素始終存在但基於值顯示或隱藏,請使用ng-show或ng-hide,否則使用ng - 如果您希望該元素存在或不存在基於值。 –
這是我的問題所在。 我有2組數據。最初我想隱藏他們兩個,然後在驗證後,我可以顯示div中的兩個數據中的任何一個。 –