useDisabledLayout
useDisabledLayout(...) neutralise conditionnellement un FormField.
Quand le layout est désactivé :
- le rendu retourne
null; check()retourneEE.success(undefined).
Signature
ts
useDisabledLayout(formField, {
isDisabled(): boolean,
});Paramètres
formField: champ enfant.isDisabled(): condition de désactivation.
Valeur produite
currentValue: conserve la valeur interne du champ enfant.check(): retourneundefinedsi désactivé, sinon le résultat du champ enfant.
Template
Ce layout n'a pas de template dédié.
Son getVNode() retourne directement :
nullsi le champ est désactivé ;- le
VNodedu champ enfant sinon.
Il n'y a donc pas d'exemple de createTemplate(...) pour ce layout.
Exemple
ts
import { ref } from "vue";
import { useDisabledLayout } from "@duplojs/form/vue";
import { useTextInput } from "@duplojs/form/vueDesignSystem";
const hasCompany = ref(false);
export const company = useDisabledLayout(
useTextInput({ label: "Company" }),
{
isDisabled: () => !hasCompany.value,
},
);Cas d'usage
- champ optionnel conditionnel ;
- section cachée tant qu'une case n'est pas cochée ;
- variation du formulaire selon un état externe.
