GridMultiTemplate
Template grid par défaut pour le type multi.
Props système
fieldKeygetCurrentValue()getFormFields()
Props grid
columns?: numbermaxColumns?: numbergap?: number
Slots
formField
Exemple
vue
<script setup lang="ts">
import { type MultiTemplateProperties } from "@duplojs/form/vue";
import { computed } from "vue";
import { type GridTemplateLayoutContainerProps } from "@duplojs/form/vueGrid";
type Props = (
& MultiTemplateProperties["props"]
& GridTemplateLayoutContainerProps
);
const props = defineProps<Props>();
defineSlots<MultiTemplateProperties["slots"]>();
const containerStyles = computed(() => ({
"--DFV-grid-max-columns": props.maxColumns,
"--DFV-grid-gap": props.gap !== undefined ? `${props.gap}px` : undefined,
"--DFV-grid-columns": props.columns,
}));
</script>
<template>
<div
class="DFV-grid-container DFV-grid-element"
:style="containerStyles"
>
<slot name="formField" />
</div>
</template>Ce que fait ce template
- crée un conteneur grid imbriqué ;
- laisse chaque sous-champ gérer sa propre largeur dans la grille.
