【发布时间】:2019-12-20 20:39:06
【问题描述】:
我有一个微调器,但我还希望微调器中有一些独立于组件的文本。因此,例如,如果您正在执行保存操作,则微调器将显示:...正在保存。但是例如,如果您执行搜索操作。微调器将显示:..processing 等。
我有这个作为微调组件:
<div *ngIf="(isLoading | async)" class="overlay">
<div>
<mat-progress-spinner class="spinner" [color]="color" [mode]="mode" [value]="value"> </mat-progress-spinner>
<div style="position:relative; top: -60px; left: 30px;">{{message}}</div>
</div>
</div>
和ts脚本:
export class LoaderComponent {
color = 'primary';
mode = 'indeterminate';
value = 50;
message = 'Hello there';
isLoading: Subject<boolean> = this.loaderService.loaderState;
constructor(private loaderService: LoaderService) {}
}
然后例如我在这个组件中加载微调器:listComponent
<app-loader ></app-loader>
所以我看到了微调器,但没有看到消息。
那么我必须改进什么才能显示文本?
以及如何动态地制作文本?这样你就可以在里面放任何短信了?
谢谢
我现在是这样的:
<div *ngIf="(isLoading | async)" class="overlay">
<div>
<mat-progress-spinner class="spinner" [color]="color" [mode]="mode" [value]="value"> </mat-progress-spinner>
<div style="position:absolute; top: -60px; left: 30px;">{{message}}</div>
</div>
</div>
export class LoaderComponent {
color = 'primary';
mode = 'indeterminate';
value = 50;
@Input()
message = 'Hello there';
isLoading: Subject<boolean> = this.loaderService.loaderState;
constructor(private loaderService: LoaderService) {}
}
这是css:
.overlay {
position:fixed;
display:block;
width:100%;
height:100%;
top:0;
left:0;
background-color:rgba(74,74,74,.8);
z-index:99999;
}
.spinner {
margin:auto;
position:absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
【问题讨论】:
-
“所以我看到了微调器,但没有看到消息”如果你在那里看不到你好,因为那是你 component.ts 中的消息属性,那么你应该首先关注 div 样式。
标签: javascript html angular angular-material spinner