Спасибо за размещение вашего кода.Похоже, мы можем исключить угол PHP, который я упомянул в комментарии выше.Я думаю, проблема в том, что вы не слушаете новых пользователей.
# Присоединение к каналам присутствия
https://laravel.com/docs/5.8/broadcasting#joining-presence-channels
здесь обратный вызов будет выполнен сразу же после успешного подключения к каналу и получит массив, содержащий информацию о пользователях для всех других пользователей, которые в настоящее время подписаны на канал.
Для меня этоуказывает, что метод here
срабатывает только один раз, когда ваше приложение присоединяется к каналу.Чтобы получить новых пользователей, вам нужно будет подписаться на дополнительные события и отправить нового пользователя (или удалить пользователя из) массива пользователей в полученном виде.
window.Echo.join('online')
.here((users) => {
// loads the initial data
this.users = users;
})
.joining((user) => {
// push a newly joining user to the users array
// ...
})
.leaving((user) => {
// delete a user who is leaving from the users array
// ...
});
Я не написал никаких конкретныхкод для дополнительных методов, так как вы можете сортировать пользователей определенным образом, но я думаю, что вы должны понять.