【发布时间】:2017-01-16 22:59:10
【问题描述】:
我对开发非常陌生,尤其是对 AngularJS。我的应用程序中有一些缓慢的功能,我想在功能运行时显示一个微调器。我发现 Angular-Spinner 应该可以正常工作。
我创建了一个 div
<div ng-show="spinner" class="results_overlay ng-cloak">
<span us-spinner="{radius:30, width:8, length: 16}" spinner-key="spinner-1"></span>
</div>
我放在页面顶部的
.results_overlay {
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 10;
background: rgba(255, 255, 255, 0.5);
}
并且我一直隐藏在我的控制器中:
$scope.spinner = false;
当按下按钮时,我想:
- 显示隐藏的 div
- 启动微调器
- 执行缓慢的操作
- 停止微调器
- 再次隐藏 div
我正在尝试使用此代码:
$scope.addDog = function () {
$scope.spinner = true;
usSpinnerService.spin('spinner-1');
$scope.dogs.push({
id: $scope.dogs.length + 1,
name: $scope.name,
age: $scope.age,
random: $scope.random()
});
// Clear input fields after push
$scope.name = "";
$scope.age = "";
usSpinnerService.stop('spinner-1');
$scope.spinner = false;
};
显然没有发生任何事情,我用代码玩了一下,我理解输出完全被推送到屏幕上,因此带有微调器的 div 同时被激活和停用。有没有办法实现我想要实现的目标?
Plunker 上的示例:我正在生成一个非常长的随机数序列,以使函数非常慢。
【问题讨论】:
标签: javascript angularjs spinner