diff options
Diffstat (limited to 'src/utils/hooks/use-query-selector-all.tsx')
| -rw-r--r-- | src/utils/hooks/use-query-selector-all.tsx | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/utils/hooks/use-query-selector-all.tsx b/src/utils/hooks/use-query-selector-all.tsx index dbeec90..6ac8a08 100644 --- a/src/utils/hooks/use-query-selector-all.tsx +++ b/src/utils/hooks/use-query-selector-all.tsx @@ -1,14 +1,22 @@ +import { useRouter } from 'next/router'; import { useEffect, useState } from 'react'; +/** + * Use `document.querySelectorAll`. + * + * @param {string} query - A query. + * @returns {NodeListOf<HTMLElementTagNameMap[T]|undefined>} - The node list. + */ const useQuerySelectorAll = <T extends keyof HTMLElementTagNameMap>( query: string -) => { +): NodeListOf<HTMLElementTagNameMap[T]> | undefined => { const [elements, setElements] = useState<NodeListOf<HTMLElementTagNameMap[T]>>(); + const { asPath } = useRouter(); useEffect(() => { setElements(document.querySelectorAll(query)); - }, [query]); + }, [asPath, query]); return elements; }; |
