Menu

Thursday, December 26, 2019

[Laravel - Blade Template] การสร้าง Layout และการ Extend Layout
[Laravel - Blade Template] How to Create and Extend Layout

การสร้าง Layout

การสร้าง Layout เป็นการสร้างเว็บเพจด้วย HTML เช่นเดียวกับหน้าเว็บทั่วไป แต่แทนค่าส่วนต่างๆที่จะใช้โดย child view ด้วย directives ซึ่งมี directives ที่เกี่ยวกับ Layout ดังนี้
  • @section ใช้ประกาศ section ในส่วนของเนื้อหา
  • @show ใช้ประกาศ section และใช้แสดงเนื้อหาของ section นั้น
  • @yield ใช้แสดงเนื้อหาของ section ที่ระบุ
ตัวอย่าง เช่น
@section('sidebar')
    This is the master sidebar.
@show

<div class="container">
    @yield('content')
</div>

การ Extend Layout

การ Extend Layout เป็นการระบุ Layout ที่จะใช้ และทำการแทนค่าส่วนต่างๆที่เป็น directive ใน Layout ด้วยข้อมูลที่ต้องการแสดง ซึ่งมี directives ที่เกี่ยวกับ Layout ดังนี้
  • @extends ใช้ระบุชื่อ Layout ที่เราต้องการนำมาใช้
  • @section ใช้ระบุ section ที่เราต้องการใส่ข้อมูลเข้าไป
  • @parent ใช้ระบุเพื่อเพิ่มเนื้อหาเข้าไปยัง section ของ Layout แทนการเขียนทับ ใช้กับ section ที่จบด้วย @show ใน Layout
  • @endsection ใช้เพื่อจบการประกาศ section
ตัวอย่างเช่น
@extends('layouts.app')

@section('sidebar')
    @parent

    This is the child sidebar.
@endsection

@section('content')
    This is content.
@endsection
ผลการ Render จะเป็นดังนี้
This is the master sidebar.
This is the sidebar.

<div class="container">
    This is content.
</div>

No comments:

Post a Comment