diff --git a/src/components/selfStatus/selfStatus.tsx b/src/components/selfStatus/selfStatus.tsx
new file mode 100644
index 0000000..e954852
--- /dev/null
+++ b/src/components/selfStatus/selfStatus.tsx
@@ -0,0 +1,28 @@
+import React from "react";
+import { useAppSelector } from "../../hooks/store";
+import "./style.css"
+
+const SelfStatus :React.FC = () => {
+
+    const userName = useAppSelector(state => state.user.userName)
+    const role = useAppSelector(state => state.user.role)
+    const uploadTraffic = useAppSelector(state => state.user.uploadTraffic)
+    const downloadTraffic = useAppSelector(state => state.user.downloadTraffic)
+    const downloadPoints = useAppSelector(state => state.user.downloadPoints)
+    const avatar = useAppSelector(state => state.user.avatar)
+    const islogin = useAppSelector(state => state.user.isLogin)
+    return <>
+            <div className="user">
+                <img className="avatar" src={avatar}></img>
+                <p className="userName">{userName},欢迎你</p>
+            </div>
+            <div className="info" >
+                <p className="uploadTraffic">上传量：{uploadTraffic}</p>
+                <p>下载量：{downloadTraffic}</p>
+                <p>下载积分：{downloadPoints}</p>
+            </div>
+
+    </>
+}
+
+export default SelfStatus
