Laravel Blade 没有多余的空格?

问题描述 投票:0回答:6
php laravel laravel-blade
6个回答
46
投票

尝试使用三元运算符,Laravel 中没有空格控制

<p>{{ $foo ? ($bar ? 'test' : '') : ''}}</p>

14
投票

您可以在要关闭或连接的代码之间添加

{{""}}
,无需空格。

<p>@if($foo)@if($bar)test@endif{{""}}@endif</p>

10
投票

您始终可以使用 packagist 上的 hedrium/spaceless-blade 软件包将此功能添加到 Blade。


10
投票

这似乎获得了大量的搜索流量,所以我想我应该添加一个更新来分享我这些天是如何处理这个问题的。基本上,代码多了一点,但最终变得愚蠢简单且非常干净:

@if($foo)
  <p>Test</p>
@elseif($bar)
  <p>Test2</p>
@else
  <p>Test3</p>
@endif

这个故事的寓意是,当您使用 Blade 时,不要尝试在元素中塞入大量条件。相反,让条件的结果包含该元素。它干净、易于阅读,而且只多了几个字符。


4
投票

据我所知,Blade 中没有

spaceless
标签。如果您想使用标准 Blade 标签,您将有额外的空间。有一个 github 讨论,其中包含新标签的提案


0
投票

value="@error('title'){{old('title')}}@else{{''}}@isset($myBook->title){{$myBook->title}}@endisset{{''}}@enderror">

这对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.