Aller au contenu

resizable

false garde la colonne à la largeur que vous lui donnez.

Typeboolean
Par défauttrue
Modifiable en direct (update())Oui — en redonnant les colonnes (update({ columns }))
Déclaré danspackages/core/src/columns/defs.ts

Avec la fonction columns(), l’utilisateur change la largeur d’une colonne en tirant le bord de son titre ou au clavier, et « Ajuster cette colonne » l’adapte à son contenu ; le menu de colonne propose aussi « Élargir » et « Rétrécir ». resizable: false retire le bord, et aucun de ces gestes ne change cette colonne. Votre code fixe toujours sa largeur (update({ columns }), un état enregistré).

import { createGrid, type GridMessages } from '@dzgrid/dom';
import { columns } from '@dzgrid/dom/columns';
import { FR_COLUMNS } from '@dzgrid/dom/locales/fr-columns';
import { FR } from '@dzgrid/dom/locales/fr';
type Tool = { id: string; name: string; shelf: number; notes: string };
const messages: GridMessages = { ...FR, text: { ...FR.text, ...FR_COLUMNS.text } };
createGrid<Tool>(document.getElementById('outils')!, {
rows: [{ id: 't1', name: 'Marteau', shelf: 2, notes: 'Arrache-clou, 450 g' }],
columns: [
{ id: 'name', header: 'Outil' },
{ id: 'shelf', header: 'Étagère', type: 'number', width: 90, resizable: false },
],
getRowId: (r) => r.id,
messages,
features: [columns()],
});

Tirez le bord du titre Outil : il change de largeur. Celui d’Étagère n’a pas de bord à tirer.