#node.js #reactjs #sockets #websocket #socket.io
#node.js #reactjs #сокеты #websocket #socket.io
Вопрос:
В моем приложении для чата, когда в комнате чата отправляется сообщение, я хочу отобразить сообщение / тостер корневому компоненту, чтобы человек, который находится вне комнаты чата, получил уведомление.
useEffect(() => {
const token = localStorage.getItem('CC_Token');
if (token) {
const payload = JSON.parse(atob(token.split('.')[1]));
setUserId(payload.id);
}
if (socket) {
socket.on('newMessage', (message) => {
const newMessages = [...messages, message];
setMessages(newMessages);
});
}
//eslint-disable-next-line
}, [messages, socket]);
что я пытался, так это отправить действие и попытался обновить хранилище redux.
но проблема в том, что reducer не вызывается.
Каков наилучший подход для достижения этой цели
Комментарии:
1. Для этого вы можете использовать контекст .
2. Я это сделал. но редуктор не вызывается.