From 83241b12548606219f8a49e7f1cf0c5951dd0dd8 Mon Sep 17 00:00:00 2001 From: LiuJiaNan <15703339975@163.com> Date: Sat, 8 Nov 2025 15:59:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9EuseGetUserInfo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hooks/useGetUserInfo/index.d.ts | 7 ++++++ hooks/useGetUserInfo/index.js | 39 +++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 hooks/useGetUserInfo/index.d.ts create mode 100644 hooks/useGetUserInfo/index.js diff --git a/hooks/useGetUserInfo/index.d.ts b/hooks/useGetUserInfo/index.d.ts new file mode 100644 index 0000000..57f3642 --- /dev/null +++ b/hooks/useGetUserInfo/index.d.ts @@ -0,0 +1,7 @@ +export type getUserInfoFunction = () => Promise>; + +/** + * 获取用户信息 + */ +export default function useGetUserInfo(returnType: "array"): [boolean, getUserInfoFunction]; +export default function useGetUserInfo(returnType?: "object"): { loading: boolean; getDictionary: getUserInfoFunction }; diff --git a/hooks/useGetUserInfo/index.js b/hooks/useGetUserInfo/index.js new file mode 100644 index 0000000..3ac40a5 --- /dev/null +++ b/hooks/useGetUserInfo/index.js @@ -0,0 +1,39 @@ +import { request } from "@cqsjjb/jjb-common-lib/http"; +import { useState } from "react"; + +/** + * 获取用户信息 + */ +function useGetUserInfo(returnType = "object") { + // loading状态 + const [loading, setLoading] = useState(false); + + // 获取用户信息 + const getUserInfo = () => { + setLoading(true); + + return new Promise((resolve, reject) => { + // 发送请求 + request( + "/basic-info/user/getInfo", + "get", + {}, + ) + .then((res) => { + resolve(res.data); + }) + .catch((err) => { + reject(err); + }) + .finally(() => { + setLoading(false); + }); + }); + }; + + if (returnType === "array") + return [loading, getUserInfo]; + return { loading, getUserInfo }; +} + +export default useGetUserInfo;