Giải pháp chuyển đổi số trọn gói cho doanh nghiệp Việt
Nếu như trước đây bạn cần phải viết một đoạn code khá là dài để kiểm tra view có tồn tại hay không thì mới include và ngược lại...
VD1:
@if(view()->exists('view1'))
@include('view1')
@else
@include('view2')
@endif
Thì thay vì viết dài như thế bạn có thể sử dụng directive @includeFirst() cho ngắn gọn với cú pháp như sau:
@includeFirst(['view1, view2, ..., viewN'], data)
Trong đó:
view1, view2, ... là các view mà chúng ta muốn include. Blade sẽ chỉ include duy nhất một view đúng đầu tiên mà nó check được.data là một mảng chứa dữ liệu truyền vào view.VD2: Rút ngắn ví dụ 1 với @includeFirst()
@includeFirst(['view1', 'view2']);
Nếu bạn muốn kiểm tra view tồn tại thì mới include thì hãy sử dụng @includeIf() thay vì phải dùng if directive để check.
VD3:
@includeIf('view', ['key' => 'data'])
Nếu như bạn muốn có một tham số để check xem view này có nên được include hay không thì @includeWhen() sẽ giúp bạn.
VD4:
@include($flag, 'view', ['some' => 'data'])
Trong ví dụ trên nếu như $flag trả về true thì nó mới include view.
Thông thường để check auth trong blade template thì chúng ta thường sử auth() helper để check.
VD5:
@if(auth()->user())
// The user is authenticated.
@endif
Nhưng nếu bạn muốn ngắn gọn và minh bạch hơn thì có thể sử dụng directive @auth trong blade template.
VD5:
@auth
// The user is authenticated.
@endauth
Tương tự như @auth() directive thì đối với guest blade cũng cung cấp cho chúng ta directive @guest.
VD6:
// normal
@if(auth()->guest())
// The user is not authenticated.
@endif
// shortcode
@guest
// The user is not authenticated.
@endguest
Và nó cũng có cơ chế else
@guest
// The user is not authenticated.
@else
// The user is authenticated.
@endguest
Thay vì phải dùng:
{{ csrf_field() }}
như cũ thì bạn có thể chuyển đổi nó về dạng directive cho ngắn gọn như sau:
@csrf
Tương tự bạn cũng có thể thay thế:
{{ method_field('DELETE') }}
về dạng directive như sau:
@method('DELETE')
Chưa có câu hỏi nào cho bài này.