laravel基础学习笔记--Blade 模板

66 篇文章 4 订阅

laravel基础学习笔记–Blade 模板

Blade 视图文件都将被编译成原生的 PHP 代码并缓存起来,除非它被修改,否则不会重新编译,这就意味着 Blade
基本上不会给你的应用增加任何负担。
Blade模板

<html>
    <head>
        <title>App Name - @yield('title')</title>
    </head>
    <body>
        @section('sidebar')
           sidebar里面的内容
        @show

        <div class="container">
            @yield('content')
        </div>
    </body>
</html>
//@section 和  @yield 和指令。如同 section 的意思,一个片段,
//@section 指令定义了片段的内容,
// 而 @yield 指令则用来显示片段的内容。

@section 指令定义了片段的内容,
@yield 指令则用来显示片段的内容。
@show指令是在定义布局的同时显示出来

继承布局

@extends('layouts.app')//继承blade模板文件,不需要后缀

@section('title', 'Page Title')//@section向布局片段注入内容

@section('sidebar')
    @parent 
    //@parent 指令向布局的 sidebar 追加(而非覆盖)内容
	//@parent 指令将被布局中的内容替换。
	//如果没有@parent这个指令,那么子模板就会覆盖父模板的内容
    <p>向sidebar追加的内容</p>
@endsection

@section('content')
    <p>我是被注入的内容</p>
@endsection 
//@endsection 指令仅定义了一个片段, @show 则在定义的同时 立即 yield 这个片段。

@yield 指令还接受一个默认值作为第二个参数。如果被 「yield」的片段未定义,则该默认值被渲染

@yield('title','我是标题')

在blade中使用从路由传递的变量
比如,定义一个路由的同时传递一个变量

Route::get('/child', function () {
    return view('child', ['name' => '小信']);
});

使用传递过来的变量

{{$name}}

其实,blade的{{}}括号,不单单可以解析PHP变量,也支持PHP函数

{{time()}}

{{}}括号会默认转义,如果不想被转义,就可以使用{{!! !!}}

{{!!$script!!}}

有时候,为了初始化一个 JavaScript 变量,您可能会向视图传递一个数组并将其渲染成 JSON

<script>
        var json = @json($json);
        console.log(json);
    </script>

if语句

@if(count($json)===1)
        数组的元素是一个
    @elseif(count($json)>1)
        数组元素大于一个
    @else
        else语句
    @endif

鉴权指令
@auth 和 @guest 指令可用于快速判断当前用户是否已经获得授权或是当前用户是游客

@auth
    <p>已登录</p>
@endauth
@guest
    <p>未登录</p>
@endguest

还可以把参数写进去

@auth('admin')
    // 用户已经通过认证
@endauth

@guest('admin')
    // 用户没有通过认证……
@endguest

Loop变量
循环时,循环内部可以使用 $loop 变量。该变量提供了访问一些诸如当前的循环索引和此次迭代是首次或是末次这样的信息的方式:

@foreach($json as $v)
        @if($loop->first)
            首个元素
        @endif
        @if($loop->last)
            最后一个元素
        @endif
        <p>元素值:{{ $v }}</p>
    @endforeach
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小信啊啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值