如何通過View::first使用Laravel Blade的動態(tài)模板詳解
前言
本文主要給大家介紹了關(guān)于View::first使用Laravel Blade動態(tài)模板的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹吧。

當(dāng)創(chuàng)建動態(tài)組件或者頁面的時候,有時候我們想當(dāng)自定義模版存在的時候展示它,否則展示默認(rèn)的模版。
例如,當(dāng)我們創(chuàng)建頁面模塊的時候,通常需要給“關(guān)于我們”和“聯(lián)系我們”自定義模版(如展示照片或者聯(lián)系表單),而“我們的服務(wù)”則可以使用默認(rèn)模板。
我們可以通過一系列的 if 判斷或者使用 view()->exists() 來判斷自定義模板是否存在,然而,Laravel 5.5 為我們帶來了一個更加優(yōu)雅的方法來實現(xiàn)這個功能。
View::first 的使用
view()->first() 方法可以使我們把下面的代碼
if (view()->exists('custom-template')) {
return view('custom-template', $data);
}
return view('default-template', $data);
替換為更加簡潔的版本:
return view()->first( ['custom-template', 'default-template'], $data );
必須給這個方法的第一個參數(shù)傳遞一個數(shù)組,當(dāng)?shù)谝粋€存在的時候,就將使用它。
當(dāng)然,你可以傳遞任意個數(shù)的模版,你甚至還可以使用動態(tài)名稱:
return view()->first([
"pages/{$page->slug}",
"pages/category-{$page->category->slug}",
"pages/default-template"
], $data);
此外,你還可以通過 Facade 版本的這個功能:
\View::first($templates, $data)
這個動態(tài)選擇模版的 Blade 方法是在 Laravel 5.5 中引入的,使得處理動態(tài)模版更加簡潔,不需要額外的條件判斷了。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
LAMP環(huán)境使用Composer安裝Laravel的方法
這篇文章主要介紹了LAMP環(huán)境使用Composer安裝Laravel的方法,簡單分析了Ubuntu服務(wù)器環(huán)境下Composer的安裝及使用Composer安裝Laravel的相關(guān)命令與使用技巧,需要的朋友可以參考下2017-03-03
關(guān)于PHP5.6+版本“No input file specified”問題的解決
這篇文章主要介紹了關(guān)于PHP5.6+版本“No input file specified”問題的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
關(guān)于Laravel Route重定向的一個注意點
這篇文章主要給大家介紹了關(guān)于Laravel Route重定向的一個注意點,文中給出了詳細(xì)的示例代碼,有需要的朋友可以參考借鑒,下面來一起看看吧。2017-01-01

