add: improved the frontend and the backend by adding websockets

This commit is contained in:
Lukian 2025-04-07 22:46:04 +02:00
parent ecf7b61aca
commit fbf7821320
18 changed files with 255 additions and 65 deletions

View file

@ -34,17 +34,6 @@ export default function UserPage() {
});
}, [username]);
useEffect(() => {
const id = setInterval(() => {
axios
.get(`/api/users/${username}/lastmessages`).then((res) => {
setMessages(res.data)
})
}, 2000)
return () => { clearInterval(id) }
}, [username])
if (!pageUser) {
return <div>Loading...</div>;
}
@ -55,19 +44,19 @@ export default function UserPage() {
<div className="user">
<h2>{pageUser.username}</h2>
{pageUser.admin ? <p>Admin</p> : <p>User</p>}
<div className="user-messages">
<h2>Last messages</h2>
<div className="messages-list">
{messages?.map((message) => (
<MessageComponent
key={message.id}
message={message}
user={pageUser}
channel={undefined}
deleteMessage={undefined}
/>
))}
</div>
</div>
<div className="user-messages">
<h2>Last messages</h2>
<div className="messages-list">
{messages?.map((message) => (
<MessageComponent
key={message.id}
message={message}
user={pageUser}
channel={undefined}
deleteMessage={undefined}
/>
))}
</div>
</div>
</div>