AngularJS - 如何在数组长度为零时显示警报并隐藏默认行为
AngularJS - how to show an alert when the length of an array is zero and hide the default behavior?
>我正在使用角度,我正在显示一个小加载圆圈,一旦加载内容,它就会消失。 那个圆圈只是一个 CSS 类,我只是在页面加载第一次时从我的 html 调用它,我是这样做的:
实际上圆圈必须类:.circle
和圈内.loader
......
<div ng-hide="lineItems.length" class="circle">
<div class="loader"></div>
</div>
正如你在下面看到的,有一个带有if
的承诺,它说如果linesItems.length为零,则显示myModal。 一切正常,但加载循环仍然出现,我需要做的是完全删除该.circle
,并在达到if
内条件后.loader
。
.then(function(lines) {
$scope.lineItems = lines;
if ($scope.lineItems.length === 0) {
myModal.show();
console.log('I AMN EMPTY');
}else {
loaderAlert.hide();
}
}
有人说我必须使用$scope变量,但我不知道该怎么做,我是 Angular 的新手,还有其他方法吗?
当您开始承诺时,设置一个标志以声明您当前正在加载。然后在加载完成后,将标志设置为 false。将其与 ng-class 或 ng-if 一起使用,以使圆的外观有条件。
function doStuff(){
$scope.loadingIsHappening = true;
myService.getStuff().then(function(){
// your processing here
}).finally(function(){
$scope.loadingIsHappening = false;
});
}
.HTML:
<!-- ng-if removes from DOM, while ng-hide modifies CSS display to none-->
<div ng-if="loadingIsHappening == true" class="circle">
<div class="loader"></div>
</div>
相关文章:
- 在jquery中为显示/隐藏设置cookie
- PHP Javascript显示/隐藏按钮不工作
- 打开/关闭按钮以显示/隐藏内容
- 显示隐藏复选框
- 在bootstrap中显示隐藏特定的li
- JQuery上下文菜单显示/隐藏问题
- JQuery在单击时停止显示/隐藏
- HTML5在提交并显示所需标签后显示隐藏的表单元素
- 使用 jQuery 切换显示/隐藏
- 显示/隐藏有关模型更改的指令内容
- Bootstrap在页面加载缓慢时会立即显示隐藏的模式对话框
- 根据特定条件使用ng显示/ng隐藏来显示/隐藏元素
- 显示/隐藏不起作用
- 使用ng-hide根据条件显示/隐藏按钮
- 仅在第一个结果中显示/隐藏MySQL结果函数
- 显示/隐藏http://ftp链接
- 在显示/隐藏中单击时删除的文本
- 是否可以在不重新渲染的情况下显示/隐藏父对象中的元素
- 将页面内容向左移动时显示/隐藏右侧面板
- 显示/隐藏将不会加载