hooks.ts 626 B

123456789101112131415161718192021222324252627282930
  1. import {getTreeMenu} from '@apis';
  2. import {useContext} from '@hooks';
  3. import {useQuery} from '@tanstack/react-query';
  4. import {context} from '../context';
  5. export function useMenuTree() {
  6. const {data} = useQuery({
  7. queryKey: [getTreeMenu.name],
  8. async queryFn() {
  9. const data = await getTreeMenu();
  10. if (data.msg === '200') return data.data;
  11. throw new Error(data.errMsg);
  12. },
  13. suspense: true,
  14. });
  15. return data;
  16. }
  17. export function useCheck() {
  18. const [list, setList] = useContext(context);
  19. function onCheck(keys: string[]) {
  20. setList(keys);
  21. }
  22. return [list, {onCheck}] as const;
  23. }