Skip to content

Commit d7dedb0

Browse files
committed
[Portal] Fix audit log infinite refresh when clicking the refresh button #5795
2 parents feb29de + 4616b93 commit d7dedb0

2 files changed

Lines changed: 7 additions & 4 deletions

File tree

portal/src/graphql/adminapi/AuditLogScreen.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import React, {
44
useCallback,
55
useContext,
66
useEffect,
7+
useRef,
78
} from "react";
89
import {
910
useParams,
@@ -101,6 +102,10 @@ const AuditLogScreen: React.VFC = function AuditLogScreen() {
101102
? new Date(Number(queryLastUpdatedAt))
102103
: new Date()
103104
);
105+
const lastUpdatedAtRef = useRef(lastUpdatedAt);
106+
useEffect(() => {
107+
lastUpdatedAtRef.current = lastUpdatedAt;
108+
});
104109
const [dateRangeDialogHidden, setDateRangeDialogHidden] = useState(true);
105110
const auditLogKind: AuditLogKind = isAuditLogKind(queryAuditLogKind)
106111
? queryAuditLogKind
@@ -258,12 +263,11 @@ const AuditLogScreen: React.VFC = function AuditLogScreen() {
258263
return;
259264
}
260265
const next = new Date(Number(queryLastUpdatedAt));
261-
if (next.getTime() === lastUpdatedAt.getTime()) {
266+
if (next.getTime() === lastUpdatedAtRef.current.getTime()) {
262267
return;
263268
}
264-
// eslint-disable-next-line react-hooks/set-state-in-effect
265269
setLastUpdatedAt(next);
266-
}, [queryLastUpdatedAt, lastUpdatedAt]);
270+
}, [queryLastUpdatedAt]);
267271

268272
// Reset page to zero on search
269273
useEffect(() => {

portal/src/hook/useAppConfigForm.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,6 @@ export function useAppConfigForm<State>(
219219
reload,
220220
reset,
221221
save,
222-
// eslint-disable-next-line @typescript-eslint/no-misused-promises
223222
saveWith,
224223
effectiveConfig,
225224
};

0 commit comments

Comments
 (0)