Слышно ли эхо?не переменная? - PullRequest
0 голосов
/ 30 сентября 2018

queue.blade.php

   Echo.channel('everyone')
            .listen('Queue_number', function (e) {
                 console.log('e='+e);
                 console.log('e keys='+Object.keys(e));
                 console.log('socket='+e.socket);
                 console.log('city='+e.city);
                 console.log('p_id='+e.p_id);
                 console.log('message='+e.message);
                 console.log('s_number='+e.s_number);

app / Events / Queue_number.php

class Queue_number  implements ShouldBroadcast
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    /**
     * Create a new event instance.
     *
     * @return void
     */
    public $message;
    public $s_number;
    public $city;
    public $p_id;
    public function __construct($message,$s_number,$city,$p_id)
    {
        $this->message = $message;
        //$this->s_number = $s_number;
        $this->s_number = '1234';
        $this->city = '236';
        $this->p_id = $p_id;

    }

    public function broadcastOn()
    {
        return new Channel('everyone');
    }

контроллер

   public function queue_add(Request $request)
    {
        $message = $request->validate(['message'=>'required']);
        $s_number=$request->name;
        $city=$request->city;
        $p_id=$request->p_id;

        broadcast(new Queue_number($message['message'],$s_number,$city,$p_id));
//->toOthers()

return response()->json(['status'=>'success','message'=>$message['message'],'s_number'=>$s_number,'city'=>$city,'p_id'=>$p_id]);
    }

Я получил консоль от событийQueue_number.php

       e=[object Object]
63:615 e keys=message,s_number,socket
63:616 socket=null
63:617 city=undefined
63:618 p_id=undefined
63:619 message=1
63:620 s_number=1234

Я не знаю, почему сообщение и s_number верны, но другие, такие как city и p_id, имеют значение null, не определено?

, а ключ объекта - message, s_number, socket

почему ключевое слово "socket" показывает ключевое слово?

как решить проблему, чтобы получить эти две переменные $ city и $ p_id?

, спасибо за любую помощь.

1 Ответ

0 голосов
/ 03 октября 2018

Я нахожу глупый ответ всякий раз, когда меняю код. Вы должны перезапустить 1.laravel-echo-server start 2.php Очередь ремесленника: работа

и все в порядке ~

...