阅读(3373) (8)

Laravel 8 格式化广播通知

2021-07-06 09:24:46 更新

broadcast 频道广播通知使用 Laravel 的 事件广播 服务,它允许您的 JavaScript 实时捕获通知。您可以在通知类中定义一个 toBroadcast 方法来让通知支持被广播。该方法接收一个 $notifiable 实体并返回一个 BroadcastMessage 实例。如果 toBroadcast 方法不存在,toArray 方法将用来收集广播数据。返回的数据将被编码为 JSON 并广播给您的 JavaScript 客户端。让我们来看一个 toBroadcast 方法的例子:

use Illuminate\Notifications\Messages\BroadcastMessage;

/**
 * 获取通知的广播表现。
 *
 * @param  mixed  $notifiable
 * @return BroadcastMessage
 */
public function toBroadcast($notifiable)
{
    return new BroadcastMessage([
        'invoice_id' => $this->invoice->id,
        'amount' => $this->invoice->amount,
    ]);
}