Прослушивание события Socket.io работает на стороне сервера, но не на стороне клиента - PullRequest
0 голосов
/ 22 мая 2019

Я работаю над студенческим проектом, сайтом знакомств.Я недавно пытался использовать Socket.io, но у меня возникла проблема

Я хотел бы отправить событие, когда пользователь просматривает профиль

Прослушивание на стороне сервера: Обновление базы данных

Прослушивание на стороне клиента: отображение уведомления

Когда я запускаю событие «Просмотр пользователя», я могу прослушивать его на стороне сервера, оно работает

Но когда я пытаюсь прослушать нана стороне клиента, это не работает

Излучить событие:

socket.emit('view user', userId, userTarget)

Прослушивание на стороне сервера:

export const listenView = (socket) => {
  socket.on('view user', (userId, userTarget) => {
    console.log(`${ userId } viewed ${ userTarget }`)
    //viewUser(userId, userTarget)
  })
}

Прослушивание на стороне клиента:

componentDidMount () {
  console.log('MOUNTED')
  socket.on('view user', (userId, userTarget) => {
    console.log(`test viewed listening ${ userId } views ${ userTarget }`)
  })
}

Работает на стороне сервера: 724688ca-a9a5-4863-ace8-99e541c63b8f viewed 53bdd4e0-10db-43dd-b57b-6efead866517

Но на стороне клиента печатается только MOUNTED вместо

MOUNTED
test view listening 724688ca-a9a5-4863-ace8-99e541c63b8f viewed 53bdd4e0-10db-43dd-b57b-6efead866517

Я что-то делаюнеправильно ?

Заранее спасибо!

РЕДАКТИРОВАТЬ: Сокет всегда одинаков, я проверил идентификатор на стороне клиента и на стороне сервера, и это то же самое

1 Ответ

0 голосов
/ 22 мая 2019

Я нашел проблему.Чтобы увидеть события на стороне клиента, мне нужно было отправить его с сервера:

export const listenView = (socket) => {
  socket.on('view user', (userId, userTarget) => {
    console.log(`${ userId } viewed ${ userTarget }`)
    socket.emit('view user', userId, userTarget)
    //viewUser(userId, userTarget)
  })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...