mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
feat(Explore): make sure Loki labels are up to date (#16131)
* Migrated loki syntax and labels logic to useLokiSyntax hook * Enable loki labels refresh after specified interval has passed * Enable periodic loki labels refresh when labels selector is opened * Fix prettier * Add react-hooks-testing-library and disable lib check on typecheck * Add tests for loki syntax/label hooks * Move tsc's skipLibCheck option to tsconfig for webpack to pick it up * Set log labels refresh marker variable when log labels fetch start * Fix prettier issues * Fix type on activeOption in useLokiLabel hook * Typo fixes and types in useLokiSyntax hook test fixes * Make sure effect's setState is not performed on unmounted component * Extract logic for checking if is component mounted to a separate hook
This commit is contained in:
12
public/app/core/hooks/useRefMounted.ts
Normal file
12
public/app/core/hooks/useRefMounted.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
import { useRef, useEffect } from 'react';
|
||||
|
||||
export const useRefMounted = () => {
|
||||
const refMounted = useRef(false);
|
||||
useEffect(() => {
|
||||
refMounted.current = true;
|
||||
return () => {
|
||||
refMounted.current = false;
|
||||
};
|
||||
});
|
||||
return refMounted;
|
||||
};
|
||||
Reference in New Issue
Block a user