Просмотр исходного кода

wip contact in task notes

master
Daniel 1 год назад
Родитель
Сommit
3ce4c06991
3 измененных файлов: 19 добавлений и 13 удалений
  1. +1
    -1
      matsen-tool/src/app/_components/paging/paging.component.html
  2. +18
    -11
      matsen-tool/src/app/_components/paging/paging.component.ts
  3. +0
    -1
      matsen-tool/src/app/_helpers/loading-interceptor.service.ts

+ 1
- 1
matsen-tool/src/app/_components/paging/paging.component.html Просмотреть файл

@@ -27,6 +27,6 @@
showFirstLastButtons> showFirstLastButtons>
</mat-paginator> </mat-paginator>
</div> </div>
<div class="spt-loader-box" *ngIf="loading">
<div *ngIf="showLoading && loading" class="spt-loader-box">
<span class="spt-loader"></span> <span class="spt-loader"></span>
</div> </div>

+ 18
- 11
matsen-tool/src/app/_components/paging/paging.component.ts Просмотреть файл

@@ -1,15 +1,16 @@
import {ChangeDetectorRef, Component, Input, OnInit, ViewChild} from '@angular/core';
import {AfterViewInit, ChangeDetectorRef, Component, Input, OnInit, ViewChild} from '@angular/core';
import {MatPaginator, MatPaginatorIntl, PageEvent} from "@angular/material/paginator"; import {MatPaginator, MatPaginatorIntl, PageEvent} from "@angular/material/paginator";
import {FormBuilder, FormGroup} from "@angular/forms"; import {FormBuilder, FormGroup} from "@angular/forms";
import {debounceTime, distinctUntilChanged, Subscription} from "rxjs"; import {debounceTime, distinctUntilChanged, Subscription} from "rxjs";
import {LoadingService} from "@app/_services/loading.service"; import {LoadingService} from "@app/_services/loading.service";
import {load} from "@angular-devkit/build-angular/src/utils/server-rendering/esm-in-memory-loader/loader-hooks";


@Component({ @Component({
selector: 'app-paging', selector: 'app-paging',
templateUrl: './paging.component.html', templateUrl: './paging.component.html',
styleUrl: './paging.component.scss' styleUrl: './paging.component.scss'
}) })
export class PagingComponent implements OnInit {
export class PagingComponent implements OnInit, AfterViewInit {


@Input() public dataSource!: any; @Input() public dataSource!: any;
@Input() public getDataFunction!: Function; @Input() public getDataFunction!: Function;
@@ -27,27 +28,22 @@ export class PagingComponent implements OnInit {
protected pageIndex: number; protected pageIndex: number;
public searchForm!: FormGroup; public searchForm!: FormGroup;
public loadingSub: Subscription; public loadingSub: Subscription;
public loading: boolean;
public loading: boolean = false;
public showLoading: boolean = false;


constructor( constructor(
private fb: FormBuilder, private fb: FormBuilder,
private loadingService: LoadingService
private loadingService: LoadingService,
private cdr: ChangeDetectorRef
) { ) {
this.dataLength = 0; this.dataLength = 0;
this.pageEvent = new PageEvent(); this.pageEvent = new PageEvent();
this.pageIndex = 0; this.pageIndex = 0;
this.searchable = false; this.searchable = false;
this.loadingSub = new Subscription(); this.loadingSub = new Subscription();
this.loading = false;
} }


ngOnInit() { ngOnInit() {
this.loadingSub = this.loadingService.getLoading().subscribe(
loading => {
this.loading = loading;
console.log(this.loading);
}
);
this.pageSize = this.pageSize !== undefined ? this.pageSize : this.defaultPageSize; this.pageSize = this.pageSize !== undefined ? this.pageSize : this.defaultPageSize;
this.pageSizeOptions = this.pageSizeOptions !== undefined ? this.pageSizeOptions : this.defaultPageSizeOptions; this.pageSizeOptions = this.pageSizeOptions !== undefined ? this.pageSizeOptions : this.defaultPageSizeOptions;
this.paginator = new MatPaginator(new MatPaginatorIntl(), ChangeDetectorRef.prototype); this.paginator = new MatPaginator(new MatPaginatorIntl(), ChangeDetectorRef.prototype);
@@ -63,9 +59,20 @@ export class PagingComponent implements OnInit {
this.getData() this.getData()
}); });
} }

this.loadingSub = this.loadingService.getLoading().subscribe(
loading => {
this.loading = loading;
// To avoid Error: NG0100
this.cdr.detectChanges();
}
);
this.showLoading = true;
this.cdr.detectChanges();
} }


ngAfterViewInit() { ngAfterViewInit() {

} }


getData() { getData() {


+ 0
- 1
matsen-tool/src/app/_helpers/loading-interceptor.service.ts Просмотреть файл

@@ -9,7 +9,6 @@ import {LoadingService} from "@app/_services/loading.service";
@Injectable() @Injectable()
export class LoadingInterceptor implements HttpInterceptor { export class LoadingInterceptor implements HttpInterceptor {
constructor( constructor(
private accountService: AccountService,
private loadingService: LoadingService private loadingService: LoadingService
) { } ) { }




Загрузка…
Отмена
Сохранить