iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 11
0

跟瀏覽器畫面上有關的事情,大概都能跟View有關係,在邏輯上View是非必要存在的,在某些特殊情況下,確實是可能發生沒有view的情形,例如一個API接收傳送程式就可能不需要View了。

在web網站中通常View 的檔案中是不存在邏輯或者資料的讀取!然而這樣的設計可能帶來怎樣的好處呢? 那就必須回到MVC的分工合作囉!

假設有一個情境,後端工程師負責M與C,而前端人員負責V,在某次開會的會議上,老闆希望可以改出三個畫面版本,但是都是僅只有改變畫面的樣式、CSS、顏色…等(UI UX)。如此一來,假設是在MVC的架構下,就可能達到只需要前端人員進行撰寫的效果。反之,如果沒有MVC的話,勢必是要一番苦戰了!

當然在前端蓬勃發展的現在,也有其他像是SPA、MVVM...等架構的存在,這部分就比較離題了~給有興趣的朋友自行google

Laravel的view檔案位置是在resources 下的views目錄,副檔名是.php
但我們常見的view的檔案,會是.blade.php這樣結尾的,那是因為大多的開發者都會使用blade樣板引擎,但這方面並無強制性。

如果我們有一個view檔案是resources/views/hello.blade.php


<html>
    <body>
        <h1>Hello, {{ $name }}</h1>
    </body>
</html>

那如何將參數傳入view當中呢?

Route::get('/', function () {
    return view('hello', ['name' => 'James']);
});

也可以這樣使用

Route::get('/', function()
{
    return View::make('hello', array('name' => 'Taylor'));
});

傳遞資料也可以這樣使用
// 使用通用方式
$view = View::make('hello')->with('name', 'Steve');

// 使用魔術方法
$view = View::make('hello')->withName('steve');

接下來即將進入laravel的blade囉~


上一篇
DAY10: Controller
下一篇
DAY12: Blade前傳
系列文
從0開始-30天摸索laravel31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言