欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

分享5個非常有用的Laravel Blade指令

 更新時間:2018年05月30日 11:31:59   作者:Summer2018  
這篇文章主要給大家分享介紹了5個非常有用的Laravel Blade指令,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

簡介

Blade是Laravel提供的一個非常簡單、強(qiáng)大的模板引擎,不同于其他流行的PHP模板引擎,Blade在視圖中并不約束你使用PHP原生代碼。所有的Blade視圖都會被編譯成原生PHP代碼并緩存起來直到被修改,這意味著對應(yīng)用的性能而言Blade基本上是零開銷。Blade視圖文件使用.blade.php文件擴(kuò)展并存放在resources/views目錄下。

接下來我將帶大家認(rèn)識下五個 Laravel Blade 指令,這些指令將讓你在解決特定問題時如虎添翼。如果你是剛接觸 Laravel 的用戶,這些小技巧能帶你認(rèn)識到 Laravel Blade 模板引擎的便捷與高效。

廢話少說,讓我們開始吧。

1. 檢測用戶是否認(rèn)證

你可以通過驗證用戶是否為空來檢測其是否認(rèn)證:

@if(auth()->user())
 // 用戶已認(rèn)證
@endif

然而,Laravel 自帶的 Blade 命令可以更簡潔地實現(xiàn)相同的功能:

@auth
 // 用戶已認(rèn)證
@endauth

2. 檢測用戶是否為訪客

與認(rèn)證相反,我們可以用 auth 輔助函數(shù)的 guest() 方法來檢測用戶是否為訪客:

@if(auth()->guest())
 // 用戶未認(rèn)證
@endif

不過 Laravel 也為此提供了 @guest 命令:

@guest
 // 用戶未認(rèn)證
@endguest

我們也可以使用 else 語句來組合這兩個命令:

@guest
 // 用戶未認(rèn)證
@else
 // 用戶已認(rèn)證
@endguest

3. 如果第一個視圖存在則引入,否則引入第二個

構(gòu)建多主題站點(diǎn)可能會有一個文件如果存在就引入,否則就引入另一個的需要,你可以簡單地使用條件判斷來實現(xiàn):

@if(view()->exists('first-view-name'))
 @include('first-view-name')
@else
 @include('second-view-name')
@endif

不過還是有一個更簡潔直觀的命令來做這件事:

@includeFirst(['first-view-name', 'second-view-name']);

4. 根據(jù)條件引入視圖

當(dāng)你只想在一定邏輯的基礎(chǔ)上(如:一個已通過認(rèn)證的用戶)添加一些內(nèi)容的時候,根據(jù)條件引入視圖就非常有用了。

你可以使用 @if 條件來這樣寫:

@if($post->hasComments())
 @include('posts.comments')
@endif

我們可以只用一行命令 @includeWhen 來做到:

@includeWhen($post->hasComments(), 'posts.comments');

5. 引入一個存在的視圖

如果你有自定義主題系統(tǒng)或者你需要動態(tài)地創(chuàng)建 Blade 視圖,那么檢查文件是否存在就是必須要做的。

可以在輔助函數(shù) view() 上調(diào)用 exists 方法:

@if(view()->exists('view-name'))
 @include('view-name')
@endif

也可以使用 Blade 命令 includeIf 來處理:

@includeIf('view-name')

你可以通過 Blade 官方文檔 了解更多實用的技巧來優(yōu)化你 Laravel 項目里的前端模板。

重構(gòu)快樂!

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論