enumOptions
Les valeurs qu’une colonne enum peut contenir, avec les mots affichés pour elles.
| Type | readonly EnumOption[] |
|---|---|
| Par défaut | non défini |
Modifiable en direct (update()) | Oui — en redonnant les colonnes (update({ columns })) |
| Déclaré dans | packages/core/src/columns/defs.ts |
Ce qu’il fait
Section intitulée « Ce qu’il fait »Chaque option a une value (ce que contient la ligne), un label déjà traduit (ce qu’affiche la
cellule ; la valeur elle-même sans lui) et des aliases (d’autres mots qu’une personne peut taper ou coller pour
elle). Un texte tapé correspond à une valeur, un libellé ou un alias, quels que soient sa casse et ses accents.
La colonne trie par libellé (dans l’ordre de la liste avec codec). Une valeur absente de la liste est
affichée telle quelle. Une colonne enum sans enumOptions (et sans codec) est
refusée avec une erreur invalid-column. En édition, l’éditeur de liste (editors({ list: listEditor })) propose les options (edit.options peut
les restreindre ligne par ligne).
import { createGrid } from '@dzgrid/dom';import { FR } from '@dzgrid/dom/locales/fr';
type Task = { id: string; title: string; status: string };
createGrid<Task>(document.getElementById('taches')!, { rows: [{ id: 't1', title: 'Huiler le portail', status: 'todo' }], columns: [ { id: 'title', header: 'Tâche' }, { id: 'status', header: 'État', type: 'enum', enumOptions: [ { value: 'todo', label: 'À faire', aliases: ['ouvert'] }, { value: 'done', label: 'Fait', aliases: ['fermé'] }, ], }, ], getRowId: (r) => r.id, messages: FR,});