Laravel Echo не слушает пушера - PullRequest
0 голосов
/ 16 января 2019

Попытка создать своего рода приложение для чата с laravel и vuejs. Как только сообщение отправлено, я запускаю событие из laravel, которое отражается на консоли отладки толкателя с правильным классом событий, но обратный вызов прослушивания из vuejs вообще не вызывается.

created () {
        window.Echo.channel('chat')
            .listen('MessageSent', (e) => {
                console.log(e); //not getting this
                this.sentMessages.push({
                    message: e.message.message,
                    user: e.user
                });
            });

    },

Ниже приведен скриншот консоли отладчика от толкателя. см. Изображение здесь, как мне сказали, я не могу встраивать изображения

1 Ответ

0 голосов
/ 16 января 2019

Попробуйте это:

created () {
        window.Echo.channel('chat')
            .listen('App\\Events\\Chats\\MessageSent', (e) => {
                console.log(e);
                this.sentMessages.push({
                    message: e.message.message,
                    user: e.user
                });
            });

    },

По умолчанию Laravel будет транслировать событие, используя имя класса события. Однако вы можете настроить имя широковещания, определив метод широковещательной передачи для события:

public function broadcastAs()
{
    return 'server.created';
}

Вышеуказанная копия была вставлена ​​с Имя вещания Laravel

Моя рекомендация:

Я всегда использовал частные каналы для чата, и вы тоже должны. Читайте здесь, почему

...