fix: display error message when user or channel does not exists

This commit is contained in:
Lukian LEIZOUR 2025-04-18 18:39:56 +02:00
parent 17c6ab79ca
commit 2b2a38682a
5 changed files with 80 additions and 33 deletions

View file

@ -12,6 +12,7 @@ export default function UserPage({socket}: {socket: WebSocket}) {
const [pageUser, setPageUser] = useState<User>();
const [messages, setMessages] = useState<Messages>();
const [user, setUser] = useState<User>();
const [noUser, setNoUser] = useState<boolean>(false);
useEffect(() => {
const localToken = localStorage.getItem("token");
@ -31,7 +32,10 @@ export default function UserPage({socket}: {socket: WebSocket}) {
setPageUser(res.data);
})
.catch((err) => {
console.error(err.response);
if (err.response.data.error === "No user found") {
setNoUser(true);
}
console.error(err.response.data);
});
axios
@ -40,7 +44,7 @@ export default function UserPage({socket}: {socket: WebSocket}) {
setMessages(res.data);
})
.catch((err) => {
console.error(err.response);
console.error(err.response.data);
});
}, [username]);
@ -59,6 +63,19 @@ export default function UserPage({socket}: {socket: WebSocket}) {
}
});
}, [pageUser]);
if (noUser) {
return (
<div className="user-page">
<TopBar user={user} />
<div className="user">
<h2>User Not Found</h2>
<p>Sorry, the user you are looking for does not exist.</p>
<Link to="/">Go back to the homepage</Link>
</div>
</div>
)
}
if (!pageUser) {
return (