嗨,我有这个 js 代码
var pusher = new Pusher('my pusher key', {
cluster: 'ap2'
});
var channel = pusher.subscribe('my-channel');
channel.bind('my-event', function(data)
{
console.log(data);
});
这是我的 Laravel 代码
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';
}
这是调用代码
return event( new \App\Events\New_pos_online_order_event('aa'));
现在是代码
channel.bind('my-event', function(data)
{
console.log(data);
});
总是在控制台上返回[],所以我尝试了这个
public function broadcastAs()
{
return 'my-event.'.$this->pos_invoice;
}
还有这个
public function broadcastOn()
{
return new Channel('my-channel'.'asdfasdf');
}
当我更改任何内容时
public function broadcastOn()
{
return 'my-channel';
}
public function broadcastAs()
{
return 'my-event';
}
代码不起作用并且在控制台上没有返回任何内容 那么我如何使用 js 在 Pusher 和 Laravel 上传递参数 谢谢..
最佳答案
您需要定义函数broadcastWith
**
* Get the data to broadcast.
*
* @return array
*/
public function broadcastWith()
{
return ['pos_invoice' => $this->pos_invoice];
}
您将在绑定(bind)函数的数据中收到数组
关于javascript - Laravel BroadcastAs 中的 Pusher 传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72582458/