В моем чате приложения laravel не прослушивается событие на стороне клиента, но оно отображается на консоли отладки pusher - PullRequest
0 голосов
/ 03 июля 2019

Я делаю приложение чата в laravel, но оно не прослушивается на стороне клиента, но на консоли отладчика он показывает, что событие инициируется данными.Может ли кто-нибудь помочь мне

Все, что указано в stackoverflow

Событие NewChat


namespace App\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Queue\SerializesModels;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow;
use App\Chat;
class NewChat implements ShouldBroadcastNow
{
    use Dispatchable, InteractsWithSockets, SerializesModels;
    public $chat;
    /**
     * Create a new event instance.
     *
     * @return void
     */
    public function __construct(Chat $chat)
    {
        $this->chat = $chat;
    }

    /**
     * Get the channels the event should broadcast on.
     *
     * @return \Illuminate\Broadcasting\Channel|array
     */
    public function broadcastOn()
    {
        return new PrivateChannel('Chat.'. $this->chat->sender_id .'.'. $this->chat->reciever_id);
    }
}

ChatController.php

    {
        $newMessage =  new Chat;
        $newMessage->sender_id = $request->sender_id;
        $newMessage->reciever_id = $request->reciever_id;
        $newMessage->message = $request->message;
        $newMessage->save();
        broadcast(new NewChat($newMessage));
        return $newMessage->toJson();
    }

ChatComposer.vue

        console.log(this.followerid + 'and' + this.userid)
        Echo.private('Chat.'+ this.follow + '.' + this.user)
            .listen('NewChat', (chat) => {
                console.log('h');
                this.chats.unshift(data);
            });
        console.log('Composer')
     }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...