$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Laravel blade include・yield・sectionの違い
Search
shin.joko
September 08, 2020
Technology
0
410
Laravel blade include・yield・sectionの違い
Laravel blade include・yield・sectionの違い
おまけでstackも
shin.joko
September 08, 2020
Tweet
Share
More Decks by shin.joko
See All by shin.joko
Laravelコマンド作成
shinjoko
0
40
Other Decks in Technology
See All in Technology
新 Security HubがついにGA!仕組みや料金を深堀り #AWSreInvent #regrowth / AWS Security Hub Advanced GA
masahirokawahara
1
2k
AWSセキュリティアップデートとAWSを育てる話
cmusudakeisuke
0
280
評価駆動開発で不確実性を制御する - MLflow 3が支えるエージェント開発
databricksjapan
1
180
SREには開発組織全体で向き合う
koh_naga
0
250
打 造 A I 驅 動 的 G i t H u b ⾃ 動 化 ⼯ 作 流 程
appleboy
0
330
OCI Oracle Database Services新機能アップデート(2025/09-2025/11)
oracle4engineer
PRO
1
180
第4回 「メタデータ通り」 リアル開催
datayokocho
0
130
5分で知るMicrosoft Ignite
taiponrock
PRO
0
360
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
130
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
740
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
7
1.6k
エンジニアリングをやめたくないので問い続ける
estie
2
1.2k
Featured
See All Featured
Code Review Best Practice
trishagee
74
19k
Building an army of robots
kneath
306
46k
Statistics for Hackers
jakevdp
799
230k
Rails Girls Zürich Keynote
gr2m
95
14k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
How STYLIGHT went responsive
nonsquared
100
6k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
Laravel blade include・yield・sectionの違い おまけにstackも
Laravelのテンプレートblade ちゃんと使えてますか?
※head内説明する上で 不要な部分は削除してま す。
いろんな@が出てくる ・stack ・include ・yield 画像にはなかったけど ・section
違いを確認してみる
@stack 他のビューやレイアウトでレンダーできるように、名前付きのスタックへ内容を退避でき ます。子ビューで必要なJavaScriptを指定する場合に、便利です。 必要なだけ何回もスタックをプッシュできます。
@stack(子テンプレート側)
@include ビューの中から簡単に他のBladeビューを取り込めます。読み込み元のビューで使用 可能な変数は、取り込み先のビューでも利用可能です。 親のビューの全データ変数が取り込み先のビューに継承されます が、追加のデータも配列で渡すことができます。
@include(子テンプレート側) 普通のblade内記述でOK
ちなみに includeから派生したやつたちもいるので 調べてみてね。 @includeIf @includeWhen @includeFirst
@yield 共通化せずにコンテンツview毎にダイナミックに変化するものやページ毎に設定する ようなものは@yieldを使います。 (それぞれのページのタイトル、メインコンテンツなど・・) 常にそれぞれのページで生み出すコンテンツに使う
@yield(子テンプレート) 各画面のコンテンツとなるHTMLを記述する @sectionで挿入が可能
@section @sectionは継承ができます。親テンプレート(レイアウトview)に記述した内容を子テン プレート(コンテンツview)で使うことができます。 共通化してかつ個別の部分を追加していくような ものに使う
@section @show で終わるのが ポイント
@section(子テンプレート) @parentで親を使いつつ、追加要素を記述出来る
テンプレートを作るとき sectionとyieldの違いは確実に覚えておくと良いです。 基本的に、子テンプレートを作るものは yield を使う! (子で追加したい要件はあまりない)
単純なHTMLの分割の場合 includeでOK!
他にも便利な機能はある
コンポーネントとスロット
コンポーネントとスロット
コンポーネントとスロット セクションとレイアウトと似た感じの機能ですが、 値の埋め込み等、見たときにわかりやすく書くことが出来ます。
色々あるので 調べてみてくださいね。