Establecer propiedades de objeto condicionales

Puede utilizar los métodos when() o less() en sus notificaciones de MailMessage para establecer propiedades de objetos condicionales como un llamado a la acción.

 

class InvoicePaid extends Notification
{
    public function toMail(User $user)
    {
        return (new MailMessage)
            ->success()
            ->line('We\'ve received your payment')
            ->when($user->isOnMonthlyPaymentPlan(), function (MailMessage $message) {
                $message->action('Save 20% by paying yearly', route('account.billing'));
            })
            ->line('Thank you for using Unlock.sh');
    }
}

 

Utilice los métodos when o anybody en sus propias clases mediante el Trait Illuminate\Support\Traits\Conditionable

Fuente: Laravel Daily