Documentation · Chapitre 09

Rendre l’état PHP réactif.

Une propriété #[State] est sérialisée dans le document et devient observable par Engine. Les fermetures compatibles sont compilées en instructions navigateur.

Chaque leçon part du problème, explique le mécanisme puis propose une vérification concrète.

Lire et modifier des propriétés ordinaires

Dans une fermeture onClick compatible, $this->count++ est compilé plutôt qu’exécuté au serveur pendant le rendu. Seules les propriétés #[State] participent.

phpaml — zsh
#[State] private int $count = 0;
#[State] private string $name = '';

Button('Ajouter')->onClick(fn () => $this->count++);
TextField()->value($this->state('name'));

Lier les champs avec value()

TextField()->value($this->state('name')) crée une liaison bidirectionnelle. name() reste le nom HTML d’envoi; value() contrôle la valeur réactive.

Réserver les effets aux effets

Utilisez le PHP normal pour les valeurs calculées dans body(). Employez Effect pour un effet réel : journal, minuterie, stockage ou requête API.