const [socket, setSocket] = useState(null);
useLayoutEffect(() => {
auth().onAuthStateChanged(async (user) => {
if (!!user) {
props.login();
const token = await user.getIdToken(true);
setSocket(await getSocket(token, props.store));
} else {
console.log(socket); // return null when logout
if (socket) socket.close();
props.logout();
setSocket(null);
}
});
}, []);
Я создаю приложение React, использующее socket.io и firebase. Когда пользователь вошел в систему, я аутентифицирую и сохраняю сокет, когда я выхожу из системы, я хотел бы отключить сокет, но не могу. Сокет возвращает ноль, почему?