Heim  >  Fragen und Antworten  >  Hauptteil

Pusher-Übergabeparameter in Laravel BroadcastAs

Hallo, ich habe diesen JS-Code

var pusher = new Pusher('my pusher key', {
        cluster: 'ap2'
    });
    var channel = pusher.subscribe('my-channel');

    channel.bind('my-event', function(data)
    {
        console.log(data);
    });

Das ist mein Laravel-Code

protected $pos_invoice;
public function __construct($pos_invoice)
{
    $this->pos_invoice = $pos_invoice;
}
public function broadcastOn()
{
    return new Channel('my-channel');
}

public function broadcastAs()
{
    return 'my-event';
}

Dies ist der Anrufcode

return event( new \App\Events\New_pos_online_order_event('aa'));

Jetzt der Code

channel.bind('my-event', function(data)
    {
        console.log(data);
    });

gibt auf der Konsole immer [] zurück, also habe ich es versucht

public function broadcastAs()
{
    return 'my-event.'.$this->pos_invoice;
}

Und das

public function broadcastOn()
{
    return new Channel('my-channel'.'asdfasdf');
}

Wenn ich etwas ändere

public function broadcastOn()
{
    return 'my-channel';
}

public function broadcastAs()
{
    return 'my-event';
}

Der Code funktioniert nicht und gibt nichts auf der Konsole zurück Wie kann ich also mit js Parameter an Pusher und Laravel übergeben? Danke..

P粉340264283P粉340264283225 Tage vor431

Antworte allen(1)Ich werde antworten

  • P粉662802882

    P粉6628028822024-04-01 09:04:46

    您需要定义函数broadcastWith

    **
     * Get the data to broadcast.
     *
     * @return array
     */
    public function broadcastWith()
    {
        return ['pos_invoice' => $this->pos_invoice];
    }

    您将在绑定函数的数据中收到数组

    Antwort
    0
  • StornierenAntwort