如何在angular 5中创建微调器?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (64)

我有一个要求,一旦我点击按钮,微调器应该在angular5中显示几秒钟,请分享你的建议。

提问于
用户回答回答于

在html文件中:

<div class="loading" *ngIf="_loaderShow">Loading</div>

在组件文件中:

_loaderShow = true;

CSS:

.loading {
  position: fixed;
  z-index: 999;
  height: 2em;
  width: 2em;
  overflow: show;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.loading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.3);
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
  /* hide "loading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.loading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  -moz-animation: spinner 1500ms infinite linear;
  -ms-animation: spinner 1500ms infinite linear;
  -o-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
  box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}
用户回答回答于

在“index.html”的head标签中包含css文件夹中的'font-awesome.min.css'文件:

  <link rel="stylesheet" href="font-awesome.min.css"/>

创建一个可以调整大小并在任何地方重用的微调器组件。

spinner.component.ts:

import { Component, Input } from '@angular/core';
@Component
({
    selector    :  'spinner',
    templateUrl :  './spinner.component.html'
})

export class spinnerComponent 
{
    @Input () spinnerSize; 
} 

spinner.component.html:

<div *ngIf = "spinnerSize == 1">
   <i class="fa fa-spinner fa-spin fa-1x"></i>
</div>

<div *ngIf = "spinnerSize == 2">
   <i class="fa fa-spinner fa-spin fa-2x"></i>
</div>

<div *ngIf = "spinnerSize == 3">
   <i class="fa fa-spinner fa-spin fa-3x"></i>
</div>

在你希望使用微调器的任何模板中,只需包含以下内容:

<spinner [spinnerSize] = 1 ></spinner>

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动