Laravel中5个实用的Blade指令-创新互联

这篇文章给大家分享的是有关Laravel中5个实用的Blade指令的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

成都创新互联公司是工信部颁发资质IDC服务器商,为用户提供优质的服务器托管服务

五个实用的 Laravel Blade 指令,这些指令将让你在解决特定问题时如虎添翼。如果你是刚接触 Laravel 的用户,这些小技巧能带你认识到 Laravel Blade 模板引擎的便捷与高效。


1. 检测用户是否认证

你可以通过验证用户是否为空来检测其是否认证:

@if(auth()->user())
    // 用户已认证
@endif

然而,Laravel 自带的 Blade 命令可以更简洁地实现相同的功能:

@auth
    // 用户已认证
@endauth

2. 检测用户是否为访客

与认证相反,我们可以用auth 辅助函数的guest() 方法来检测用户是否为访客:

@if(auth()->guest())
    // 用户未认证
@endif

不过 Laravel 也为此提供了@guest 命令:

@guest
    // 用户未认证
@endguest

我们也可以使用else 语句来组合这两个命令:

@guest
    // 用户未认证
@else
    // 用户已认证
@endguest

3. 如果第一个视图存在则引入,否则引入第二个

构建多主题站点可能会有一个文件如果存在就引入,否则就引入另一个的需要,你可以简单地使用条件判断来实现:

@if(view()->exists('first-view-name'))
    @include('first-view-name')
@else
    @include('second-view-name')
@endif

不过还是有一个更简洁直观的命令来做这件事:

@includeFirst(['first-view-name', 'second-view-name']);

4. 根据条件引入视图

当你只想在一定逻辑的基础上(如:一个已通过认证的用户)添加一些内容的时候,根据条件引入视图就非常有用了。

你可以使用@if 条件来这样写:

@if($post->hasComments())
    @include('posts.comments')
@endif

我们可以只用一行命令@includeWhen 来做到:

@includeWhen($post->hasComments(), 'posts.comments');

5. 引入一个存在的视图

如果你有自定义主题系统或者你需要动态地创建 Blade 视图,那么检查文件是否存在就是必须要做的。

可以在辅助函数view() 上调用exists 方法:

@if(view()->exists('view-name'))
    @include('view-name')
@endif

也可以使用 Blade 命令  includeIf 来处理:

@includeIf('view-name')

感谢各位的阅读!关于“Laravel中5个实用的Blade指令”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


本文标题:Laravel中5个实用的Blade指令-创新互联
分享URL:http://ybzwz.com/article/gehcp.html