我根据searchQuery是否为空来显示和隐藏清除按钮。当用户开始在输入框中键入内容时,该按钮会立即显示。
但是,当用户单击清除按钮或删除所有输入时,在删除清除按钮之前会有明显的延迟。我也尝试过ng-show,并且收到了相同的结果。有什么想法可能存在这种滞后吗?
HTML
<button ng-if="search.cardsQuery.length" class="button-icon" ng-click="clearSearchQuery()">
<i class="ion-android-close search-cards"></i>
</button>
CONTROLLER
$scope.clearSearchQuery = function() {
$scope.search.cardsQuery = '';
};
答案 0 :(得分:2)
检查您正在应用ng-if / ng-show的元素的css类。寻找transition effect。如果类有转换,则可能是延迟的原因:
.button-icon {
transition: all .5s;
}
答案 1 :(得分:0)
这是开发人员中常见的问题。即使尝试使用ng-if也会导致相同的问题。我可以为您建议一个简单的解决方案。
打开特定html文件的css文件,然后在下面添加行。
**.ng-hide { display: none !important }**
希望,会有所帮助。
答案 2 :(得分:0)
$scope.$evalAsync();
为我工作:)