Input


Les entrées sont par défaut de type text. On peut préciser le type en indiquant password ou number.

Le paramètre required est optionnel : il fait apparaître un astérisque, indiquant à l’utilisateur que la saisie du champ est obligatoire.

Le paramètre icon est optionnel.

<script>
    import { Input } from 'gros/form'
    const form = { email: null, password: null }
</script>

<Input 
    required
    icon="mail" 
    label="Email" 
    bind:value={form.email}
/>
<Input 
    required
    password
    icon="lock"
    label="Password"
    bind:value={form.password} 
/>

param default required
value false
icon undefined false
label false
spellcheck false false
password false false
number false false
required false false
field undefined false
errors undefined false
big false false


Gros formulaire



Pour obtenir un gros Input, on ajout le paramètre big.

<Input 
    big
    required 
    icon="mail" 
    label="Email" 
    bind:value={form.email}
/>


Gestion des erreurs

Les erreurs sont gérées côté serveur. Après soumission d’un formulaire, la réponse contient éventuellement un tableau d’erreurs.

L’objet errors est normé conformément à l’exemple ci-dessous :

const errors = [
    { field: 'email', message: 'Non valid email'},
    { field: 'password', message: 'Non secured'},
]

La totalité du tableau d’erreurs sera transmise à chaque composant Input via le paramètre errors . On précisera également le nom du champ grâce au paramètre field :

<Input 
    {errors}
    required
    field="email"
    label="Email" 
    bind:value={form.email}
/>

Côté client

Dans un contexte d’administration, la vérification des formulaires peut s’opérer côté client.

Cette vérification est sommaire, elle ne prend en compte que la règle des informations requises.

<script>
    import { check } from 'gros/form'

    const errors = check(form, ['email', 'name', 'firstname'])
</script>