silphius/app/hooks/use-packet.js
2024-06-13 13:24:57 -05:00

16 lines
404 B
JavaScript

import {useContext, useEffect} from 'react';
import ClientContext from '@/context/client.js';
export default function usePacket(type, fn, dependencies) {
const client = useContext(ClientContext);
useEffect(() => {
if (!client) {
return;
}
client.addPacketListener(type, fn);
return () => {
client.removePacketListener(type, fn);
};
}, [client, ...dependencies]);
}