fix: back room with latus for HMR
This commit is contained in:
parent
32bb00b2df
commit
c4bde402c0
|
@ -10,19 +10,23 @@ export default () => {
|
|||
const latus = useLatus();
|
||||
const socket = useSocket();
|
||||
const synchronizer = latus.get('%synchronizer');
|
||||
if (latus.get('%room') !== room) {
|
||||
setRoom(latus.get('%room'));
|
||||
}
|
||||
useEffect(() => {
|
||||
if (!room) {
|
||||
return undefined;
|
||||
}
|
||||
const onDisconnect = () => {
|
||||
synchronizer.destroySynchronized(room.constructor.resourceId, room.s13nId);
|
||||
latus.set('%room', undefined);
|
||||
setRoom(undefined);
|
||||
};
|
||||
socket.on('disconnect', onDisconnect);
|
||||
return () => {
|
||||
socket.off('disconnect', onDisconnect);
|
||||
};
|
||||
}, [room, socket, synchronizer]);
|
||||
}, [latus, room, socket, synchronizer]);
|
||||
useEffect(() => {
|
||||
if (!synchronizer) {
|
||||
return undefined;
|
||||
|
@ -32,6 +36,7 @@ export default () => {
|
|||
switch (created.constructor.resourceId) {
|
||||
// Track room.
|
||||
case Room.resourceId: {
|
||||
latus.set('%room', created);
|
||||
setRoom(created);
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user