hooks.ts 638 B

123456789101112131415161718192021222324252627282930313233
  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. [getTreeMenu.name],
  8. async function() {
  9. const data = await getTreeMenu();
  10. if (data.msg === '200')
  11. return data.data;
  12. throw new Error(data.errMsg);
  13. },
  14. {
  15. suspense: true,
  16. },
  17. );
  18. return data;
  19. }
  20. export function useCheck() {
  21. const [list, setList] = useContext(context);
  22. function onCheck(keys: string[]) {
  23. setList(keys);
  24. }
  25. return [list, {onCheck}] as const;
  26. }