@yield trong Laravel là gì?

Đối với những người mới bắt đầu, có thể khá khó hiểu về sự khác biệt giữa yield và include trong laravel. Hãy cùng tìm hiểu về laravel và cách sử dụng chúng

Dữ liệu động trong mẫu lưỡi cắt

@yield được sử dụng trong mẫu chính hoặc bố cục chính. Giống như bạn muốn chuyển siêu dữ liệu từ partials sang laravel master blade. Sau đó, năng suất là rất quan trọng cho việc thực hiện này. Để xem cách sử dụng yield trong laravel, hãy xem đoạn mã

Bạn thấy chúng tôi đã chuyển dữ liệu meta_description vào mẫu chính từ các phần của chúng tôi. Bố cục hoặc mẫu chính chỉ có thể nhận loại dữ liệu thẻ meta SEO động này bằng cách sử dụng chỉ thị năng suất. Nhấp vào liên kết để tìm hiểu thêm về thẻ meta SEO động và chỉ thị năng suất

Một ví dụ khác là bạn setdata sử dụng @yield. Xem ví dụ bên dưới

Sử dụng chỉ thị năng suất, chúng tôi có thể tự động đặt tiêu đề, mô tả, hình ảnh thu nhỏ cho bài đăng trên Facebook

√Điều tương tự cũng có thể được thực hiện đối với thẻ Twitter.  

Lấy dữ liệu từ trang con về trang chính

Chúng tôi có thể sử dụng năng suất để lấy dữ liệu từ mẫu con sang mẫu chính. Với @yield, bạn có thể xác định vị trí đặt dữ liệu được nhập từ trang con. Trong ví dụ dưới đây, chúng tôi đặt dữ liệu đã nhập vào phần nội dung của mẫu chính


     @yield['content_id']

tất nhiên, nếu bạn muốn sử dụng chỉ thị năng suất trong mẫu chính của mình, bạn sẽ phải sử dụng chỉ thị @section trong các phần của mình. Mẫu chính lấy dữ liệu động từ các phần và hiển thị trong trình duyệt. Trong các phần của bạn, bạn sẽ sử dụng chỉ thị phần như bên dưới

@section['content_id']
      My content for a certain page. I will include lots of content for SEO...
@endsection

√section được sử dụng trong các phần của bạn với chỉ thị @extends, trong khi chúng ta có thể sử dụng yield trong bố cục chính của mình

Bao gồm chỉ thị

@include được sử dụng để hiển thị nội dung tĩnh trong bố cục chính, chẳng hạn như nếu bạn muốn bao gồm tiêu đề. lưỡi. php và chân trang. lưỡi. php trong mẫu chính thì bạn sẽ sử dụng

 @include[header] 
  or 
 @include[footer] 

trong mẫu chính của bạn. Vì vậy, với lệnh bao gồm, chúng tôi có thể nhập một số tệp tĩnh nhất định trong mẫu của mình. Bạn có thể sử dụng bao gồm cả trong mẫu chính hoặc mẫu con.  

Blade là một công cụ tạo khuôn mẫu đơn giản nhưng mạnh mẽ được cung cấp cùng với Laravel. Không giống như bố cục bộ điều khiển, Blade được điều khiển bởi sự kế thừa mẫu và các phần. Tất cả các mẫu Blade nên sử dụng tiện ích mở rộng

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

2

Xác định bố cục lưỡi cắt

App Name - @yield['title']

Sử dụng bố cục lưỡi cắt

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

Lưu ý rằng các khung nhìn mà

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

3 một bố cục Blade chỉ cần ghi đè lên các phần từ bố cục. Nội dung của bố cục có thể được bao gồm trong chế độ xem con bằng cách sử dụng chỉ thị

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

4 trong một phần, cho phép bạn nối thêm vào nội dung của phần bố cục, chẳng hạn như thanh bên hoặc chân trang

Đôi khi, chẳng hạn như khi bạn không chắc một phần đã được xác định hay chưa, bạn có thể muốn chuyển một giá trị mặc định cho chỉ thị

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

5. Bạn có thể chuyển giá trị mặc định làm đối số thứ hai

1

Các cấu trúc điều khiển lưỡi khác

Dữ liệu lặp lại

2

Phản hồi dữ liệu sau khi kiểm tra sự tồn tại

Đôi khi bạn có thể muốn lặp lại một biến, nhưng bạn không chắc liệu biến đó đã được đặt chưa. Về cơ bản, bạn muốn làm điều này

3

Tuy nhiên, thay vì viết một câu lệnh bậc ba, Blade cho phép bạn sử dụng lối tắt tiện lợi sau đây

Hiển thị văn bản thô với dấu ngoặc nhọn

Nếu bạn cần hiển thị một chuỗi được bọc trong dấu ngoặc nhọn, bạn có thể thoát khỏi hành vi của Blade bằng cách thêm vào trước văn bản của bạn một ký hiệu

@extends['layouts.master']

@section['title', 'Page Title']

This is appended to the master sidebar.

This is my body content.

6

5

Nếu bạn không muốn thoát dữ liệu, bạn có thể sử dụng cú pháp sau

Ghi chú. Hãy thật cẩn thận khi lặp lại nội dung do người dùng ứng dụng của bạn cung cấp. Luôn sử dụng cú pháp dấu ngoặc kép để thoát mọi thực thể HTML trong nội dung

@yield trong Laravel dùng để làm gì?

Trong Laravel, @yield chủ yếu được sử dụng để xác định một phần trong bố cục và thường xuyên được sử dụng để lấy nội dung từ trang con cho đến khi .

Năng suất ['nội dung'] là gì?

Về cơ bản, yield['content'] là điểm đánh dấu . Ví dụ: trong thẻ nếu bạn đặt một yield['content'] , bạn nói rằng phần này có tên nội dung và nhân tiện, bạn có thể đặt tên bên trong dấu ngoặc đơn bất cứ thứ gì bạn muốn. nó không nhất thiết phải là nội dung.

Việc sử dụng @include trong Laravel là gì?

@include giống như một PHP cơ bản bao gồm, nó bao gồm chế độ xem "một phần" vào chế độ xem của bạn . @extends cho phép bạn "mở rộng" một mẫu, xác định các phần riêng của nó, v.v. Một mẫu mà bạn có thể mở rộng sẽ xác định các phần riêng của nó bằng cách sử dụng @yield , sau đó bạn có thể đặt nội dung của riêng mình vào trong tệp xem của mình.

Phần mở rộng [' layouts app '] trong Laravel là gì?

Mở rộng bố cục bao gồm xác định các phần tử con . Laravel sử dụng chỉ thị Blade @extends để xác định các phần tử con.

Chủ Đề