今天,我們嘗試像[Day 4] Hello World! 開啟我們自己的第一個網頁!一樣,做出一個 hello world 的畫面
首先,我們嘗試什麼都不寫,直接連線 http://127.0.0.1/hello-world ,我們沒有宣告路由的話,一樣會看到 404 的畫面
如果我們只宣告路由,但是沒有撰寫動作,會看到的錯誤畫面如下
這邊我們可以看到錯誤的理由:「Route for [hello-world] has no action.」
而且跟 Laravel 6 的錯誤畫面相比,我們可以看到更多的資訊
像是輸入的 request 內容
以及在 Laravel 內對應到的路由內容
要寫出 hello-world 的路徑,我們可以像是 Laravel 6 時一樣,用一個匿名函數快速的建立路徑。
Route::get('/hello-world', function () {
return "hello-world";
});
在 7.4 時,PHP 引入了 arrow function 的撰寫方式,所以我們可以將上面的寫法改寫成:
Route::get('/hello-world', fn() => "hello-world");
為了避免 設計難以維護的 route,我們可以將 route 命名
Route::get('/hello-world', fn() => "hello-world")
->name('hello');
如果要產生畫面的話,跟 Laravel 6 時一樣,我們可以寫一個 resources/views/hello_world.blade.php
檔案
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hello world!!!</title>
</head>
<body>
Hello World!!!
</body>
</html>
不過這邊,我們引入的方式更簡單一點,可以直接使用 view route 的宣告方式
Route::view('/hello-world', 'hello_world');
寫好之後,我們嘗試連線 http://127.0.0.1/hello-world 就可以看到畫面了!
這樣的寫法,語法比起原本已經相當簡單的語法,又再更簡潔了一點點。
今天我們針對畫面的練習就到這裡,我們明天見!