我想知道在同一個DOM元素上使用ng-show和ng-hide是否是一種好的做法。在同一個DOM元素上使用ng-show和ng-hide是否正確?
似乎是一個更好的主意,而不是使用多個條件,其中一些否定,在單個ng顯示。
讓我知道。 謝謝!
PS:這裏的例子
<div ng-show="isBlonde" ng-hide="hasBlueEye">Mary is blonde and she has green eyes</div>
我想知道在同一個DOM元素上使用ng-show和ng-hide是否是一種好的做法。在同一個DOM元素上使用ng-show和ng-hide是否正確?
似乎是一個更好的主意,而不是使用多個條件,其中一些否定,在單個ng顯示。
讓我知道。 謝謝!
PS:這裏的例子
<div ng-show="isBlonde" ng-hide="hasBlueEye">Mary is blonde and she has green eyes</div>
絕對不會:
否則,你可能就結了。
首先,這兩個指令可以在彼此(見本JSFiddle,由Joel Skrepnek提供)跳閘,一般只是糟糕的設計。
您可以使用一個函數,另一個字段或更多的內聯邏輯。
直列邏輯:
<div ng-show="isBlonde && !hasBlueEye">Mary is blonde and she has green eyes</div>
字段:
<div ng-show="shouldShowThisDiv">Mary is blonde and she has green eyes</div>
功能
<div ng-show="shouldShowThisDiv()">Mary is blonde and she has green eyes</div>
$scope.shouldShowThisDiv = function(){
return $scope.isBlonde && !$scope.hasBlueEye;
}
我的建議會爲使用另一個場或功能,如果有需要檢查超過2倍的值。
使用一個而不是兩個。選擇使表達最具可讀性的那個。
<div ng-show='true' ng-hide='true'></div>
這對我有意義。謝謝你讓我注意到這個潛在的問題。 – jollyr0ger
體驗奇怪:http://jsfiddle.net/edE7M/ –
我覺得這個解決方案並不理想 – Muhammed
感謝您的詳盡解釋。 – jollyr0ger