useSlotLayout
useSlotLayout(...) délègue le rendu d'un bloc à un slot Vue nommé.
Il existe deux modes d'utilisation.
Mode 1 : slot autour d'un FormField
Signature
ts
useSlotLayout(name, formField);Paramètres
name: nom du slot Vue attendu.formField: champ à réinjecter dans le slot.
Valeur produite
currentValue: identique à celle du champ enfant.check(): valeur validée du champ enfant, ouundefinedsi le slot ne réinjecte pas le champ selon le flux choisi.
Paramètres de slot
ts
{
fieldKey: string;
value: unknown;
update(value: unknown): void;
formField(): any;
}Mode 2 : slot autonome avec valeur propre
Signature
ts
useSlotLayout(name, {
defaultValue,
});Paramètres
name: nom du slot Vue attendu.defaultValue: valeur par défaut du slot.
Paramètres de slot
ts
{
fieldKey: string;
value: unknown;
update(value: unknown): void;
}Exemple
ts
import { useSlotLayout } from "@duplojs/form/vue";
import { useTextareaInput } from "@duplojs/form/vueDesignSystem";
export const message = useSlotLayout(
"customMessage",
useTextareaInput({ label: "Message" }),
);Cas d'usage
- reprise manuelle d'un rendu ;
- insertion d'actions intermédiaires ;
- intégration dans une structure Vue déjà existante.
Template
useSlotLayout(...) n'a pas de template dédié.
Le rendu passe directement par le slot nommé que vous fournissez sur le composant de formulaire.
