寫在前面:有則改之,無則加勉。
命名使用
- 例1:
- 下面有個路由
Route::get('new/show/{id}', function () { return 111; });
- 在頁面中呼叫它時
<a href="{{ url('new/show'.$id) }}" > 1 </a> <!-- $id=1 上面的路由會渲染成 <a href="/new/show/1" > 1 </a> -->
- 如果需要新增引數
<a href="{{ url('new/show'.$id?.'columnId=3') }}" > 1 </a> <!-- $id=1 上面的路由會渲染成 <a href="/new/show/1?columnId=3" > 1 </a> -->
沒錯是拼接,這很不優雅
- 下面有個路由
- 例2:
- 下面使用命名
Route::get('new/show', function () { return 111; })->name('new.show');
- 就可以這樣呼叫它
<a href="{{ route('new.show', ['id'=>1]) }}" > 1 </a> <!-- 上面的路由會渲染成 <a href="/new/show/1" > 1 </a> -->
- 如果需要新增引數
<a href="{{ route('new.show', ['id'=>1, 'columnId'=>3]) }}" > 1 </a> <!-- 上面的路由會渲染成 <a href="/new/show/1?columnId=3" > 1 </a> -->
第二個引數使用陣列,可以直接傳遞引數
- 下面使用命名
- 例3
- 使用此方式的優勢還有,當路由路徑更換時
// Route::get('new/show/{id}', function () { return 111; })->name('new.show'); // 更換為 Route::get('new/info/{id}', function () { return 111; })->name('new.show');
- 渲染連結是不用更換的,方便維護
<a href="{{ route('new.show', ['id'=>1, 'columnId'=>3]) }}" > 1 </a> <!-- 上面的路由會渲染成 <a href="/new/info/1?columnId=3" > 1 </a> -->
end
- 使用此方式的優勢還有,當路由路徑更換時
本作品採用《CC 協議》,轉載必須註明作者和本文連結