隨著架構越來越大,會有越多頁面共用同一個變數,如果在 Controller 下重複去處理變數會讓程式碼變得很難維護,原本我是把共用變數的部分分離出一個 Function ,但是這樣還是在呼叫 view 的時候要重複放入一樣的程式碼,在參加 PHPConf 2016 時向 SHENGYOU FAN 大大請教,發現 Laravel 還有個 View Composer 的功能真是太好用了,但是官網給的教學跟範例不夠完整,所以在這邊寫一篇教學文章

 

1. 創建一個服務提供者:php artisan make:provider LayoutComposerServiceProvider

2. 向 config/app.php 的 'providers' => [  註冊 App\Providers\LayoutComposerServiceProvider::class,

3. 編輯 LayoutComposerServiceProvider.php  在 boot() 裡面綁定 view (參考官網範例)

4. 如果使用閉包,直接寫在 LayoutComposerServiceProvider.php 裡面就好,或是建立一個 ViewComposers (參考官網範例)

AwEi 發表在 痞客邦 PIXNET 留言(0) 人氣()