在 laravel-blade 中生成动态 css 类

问题描述 投票:0回答:4
php laravel laravel-blade
4个回答
20
投票

尝试 if else 条件简写代码:

<form class="form-group {{ $errors->has('email') ? 'has-error' : '' }}">

这看起来很整洁。

甚至 Laravel 5.2 auth 表单也是这样完成的。


3
投票

您可以使用数组来存储类名

@php
$formGroupClasses = ['form-group'];

if ($errors->has('email')) {
  $formGroupClasses[] = 'has-error';
}
@endphp

然后将它们内爆以创建一个字符串

<form class="{{ implode(' ', $formGroupClasses) }}">

2
投票

我就是这么做的。你也可以这样做:

@if($errors->has('email'))
    <div class="form-group has-error"> 
       //You can also edit classes of other elements 
    </div>
@else
    <div class="form-group"></div>
@endif

0
投票

自从提出这个问题以来,显然已经有点过了,但是现在你可以使用 条件类 来清理一些东西:

<div @class([
    'form-group',
    'has-error' => $errors->has('email')),
])>
© www.soinside.com 2019 - 2024. All rights reserved.