Можно передавать данные в классы компонентов, используя атрибуты HTML. Давайте для примера сделаем два атрибута:
<x-alert type="error" message="text" />
Давайте теперь получим эти данные в классе компонента. Для этого для начала объявим наши атрибуты свойствами класса компонента:
<?php
class Alert extends Component
{
public $type;
public $message;
}
?>
Теперь получим данные атрибутов в конструкторе:
<?php
class Alert extends Component
{
public $type;
public $message;
public function __construct($type, $message)
{
$this->type = $type;
$this->message = $message;
}
}
?>
Теперь можем сделать что-нибудь с полученными данными. Например, передадим их в представление:
<?php
class Alert extends Component
{
public $type;
public $message;
public function __construct($type, $message)
{
$this->type = $type;
$this->message = $message;
}
public function render()
{
return view('components.alert', [
'type' => $this->type,
'message' => $this->message,
]);
}
}
?>
Выведем их в представлении:
<div class="alert alert-{{ $type }}">
{{ $message }}
</div>
Передайте в компонент Logo
путь к картинке и ее alt
.