Heim > Fragen und Antworten > Hauptteil
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粉6628028822024-04-01 09:04:46
您需要定义函数broadcastWith
** * Get the data to broadcast. * * @return array */ public function broadcastWith() { return ['pos_invoice' => $this->pos_invoice]; }
您将在绑定函数的数据中收到数组