laravel的blade模板笔记

Blade视图文件使用 '.blade.php' 作为后缀,模板文件都保存在 'resources/views'
1.@yield('content')

2.

@section('sidebar')
@show

3.

@extends('laytouts.master') // 继承 layouts/master.blade.php

4.
@section('content', '要展示的内容') // 简单的区块替换,直接使用字符串

5.

// 复杂的区块,使用段落形式
@section('sidebar')
@endsection

6.

@section('sidebar')
    @parent
@endsection
// @section('sidebar')&@show区块组合,可使用@parent来获取,然后使用同一个section作为扩展
7.
view('welcome', ['name' => 'dongxuemin']) // 在路由中使用view()来调用Blade模板,并分配变量
8.模板文件中,模板标记为 {{ }}(会自动调用php的 'htmlentities()' 转实体)
9.当模板中的javascript框架,也具有模板解析功能,例如:AngularJS,也使用 '{{}}' 解析模板。Blade可以使用 '@{{}}'(当然AngularJS也允许修改左右定界符'{{}}')
10.{{ isset($name) ? $name : 'Default'}},Blade提供了简写方法:{{ $name or 'Default'}}
11.if结构
@if ()
@elseif ()
@else
@endif
12.unless结构,基本没用,等同于 @if(!xxx)  @endif
@unless ()
@endunless
13.for循环
@for ()
@endfor
14.foreach循环
@foreach
@endforeach
15.while循环
@while()
@endwhile
16.foreach循环的变种,当循环数组 == false(boolean转换为false) 时,可采用这种结构
@forelse($users as $user)
    <li>用户名:{{$user['username']}}</li>
@empty
    <p>没有用户</p>
@endforelse
17.@include('shared.errors', ['name'] => '董学敏') // 引入子视图,并给子视图分配变量
18.为数组渲染视图,可理解为循环数组的另外一种方式
@each('view.user', $users, $user[, 'view.empty'])
参数解释:
  1. 'view.user'每个条目将要展示的模板
  2. $users - 循环数组
  3. $user - 在 'view.user' 中,可使用的变量(即:一条用户数据)
  4. 'view.empty',可选参数。当数组为空时,将会渲染的模板
可以看出,完全可以使用 '@forelse' 替代
19.注释:
{{-- 我是注释内容,不会被html展示,我们项目中自己可见注释! --}}
20.服务注入:
@inject('users', 'App\Services\usersService')
参数解释:
  1. 服务的变量名称(分配给模板使用)
  2. 解析服务的类或是接口的名称
模板中使用,假设 $users->$userList 为一个用户列表:
@forelse($userList as $user)
    <li>用户名:{{$user['username']}}</li>
@empty
    <p>没有用户</p>
@endforelse
21.扩充Blade - 高级用法,不做解释





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值