Web: People|Files: Added timeout for 500 ms on setup "isLoading" flag (for quickly responses)

This commit is contained in:
Alexey Safronov 2021-04-16 16:37:22 +03:00
parent 7cb9affc77
commit ee76d58ee8
2 changed files with 21 additions and 3 deletions

View File

@ -41,6 +41,7 @@ class FilesStore {
selection = [];
selected = "close";
filter = FilesFilter.getDefault(); //TODO: FILTER
loadTimeout = null;
constructor(
authStore,
@ -77,7 +78,15 @@ class FilesStore {
};
setIsLoading = (isLoading) => {
this.isLoading = isLoading;
if (isLoading) {
this.loadTimeout && clearTimeout(this.loadTimeout);
this.loadTimeout = setTimeout(() => {
this.isLoading = isLoading;
}, 500);
} else {
this.loadTimeout && clearTimeout(this.loadTimeout);
this.isLoading = isLoading;
}
};
setTooltipPosition = (tooltipPageX, tooltipPageY) => {

View File

@ -31,6 +31,7 @@ class PeopleStore {
isLoaded = false;
isRefresh = false;
isInit = false;
loadTimeout = null;
constructor() {
this.groupsStore = new GroupsStore(this);
@ -77,8 +78,16 @@ class PeopleStore {
this.setIsLoaded(true);
};
setIsLoading = (loading) => {
this.isLoading = loading;
setIsLoading = (isLoading) => {
if (isLoading) {
this.loadTimeout && clearTimeout(this.loadTimeout);
this.loadTimeout = setTimeout(() => {
this.isLoading = isLoading;
}, 500);
} else {
this.loadTimeout && clearTimeout(this.loadTimeout);
this.isLoading = isLoading;
}
};
setIsLoaded = (isLoaded) => {