Вставка компонента на страницу в Livewire
Класс карточки поста и её шаблон уже лежат в проекте, но браузер их не показывает. Пока компонент не вставлен в обычное представление, на сайте его не видно.
Вставка делается тегом livewire.
Имя тега берётся из имени класса
в kebab-case: для PostCard
это post-card. Остальная
страница остаётся обычным Blade.
Давайте сначала зададим общий
макет сайта в layout.blade.php:
<!DOCTYPE html>
<html>
<head>
<title>title</title>
</head>
<body>
{{ $slot }}
</body>
</html>
Давайте сделаем страницу поста.
В post.blade.php обернём
содержимое в x-layout
и вставим компонент карточки:
<x-layout>
<livewire:post-card />
</x-layout>
Давайте добавим маршрут, который отдаёт это представление:
<?php
Route::get('/post', function () {
return view('post');
});
?>
Сам компонент карточки у нас такой:
<?php
namespace App\Livewire;
use Livewire\Component;
class PostCard extends Component
{
public function render()
{
return view('livewire.post-card');
}
}
?>
Его шаблон выводит подпись блока:
<div>
Post
</div>
Выведите компонент карточки работника на отдельной странице.