Import

import-grid.ts
import { NuiGrid, NuiGridCell, type NuiGridColumn } from '@needless-ui/angular/grid';

NuiGrid

Una griglia dati su una tabella nativa.

Selettore
nui-grid
NuiGrid: Proprietà
NomeTipoPredefinitoDescrizione
rowsBidirezionalereadonly T[]I dati. Le modifiche sostituiscono le righe, quindi collegali con [(rows)].
columnsInputNuiGridColumn<T>[]Le colonne, come oggetti NuiGridColumn.
rowIdInput(row: T) => unknownrow.id ?? rowLa chiave di una riga, per la selezione e il tracciamento.
labelInputstringNome accessibile della griglia.
selectionInput'none' | 'single' | 'multiple''none'Se le righe si possono selezionare, e quante.
selectedBidirezionaleunknown[][]Le chiavi delle righe selezionate.
sortBidirezionaleNuiGridSort[][]L’ordinamento, come oggetti { column, direction }; il primo ordina per primo.
filtersBidirezionaleRecord<string, NuiGridFilter>{}Un filtro per ogni id di colonna: un operatore e un valore.
searchBidirezionalestring''Parole che devono comparire tutte in una riga.
pageSizeBidirezionalenumber0Righe per pagina, o 0 per un unico elenco a scorrimento.
pageBidirezionalenumber0La pagina mostrata, a partire da 0.
pageSizesInputnumber[][10, 25, 50, 100]Le scelte nel paginatore.
virtualInputboolean | 'auto''auto'Renderizza solo le righe visibili: sempre, mai, o auto oltre 100 righe senza paginazione.
heightInputstringUna lunghezza CSS che limita la griglia; il contenuto scorre all’interno.
columnStateBidirezionaleNuiGridColumnState[][]Larghezza, ordine, blocco e visibilità di ogni colonna, da salvare e ripristinare.
modeInput'client' | 'server''client'server mostra le righe man mano che arrivano e lascia a te ordinamento, filtri e paginazione.
totalInputnumberIl numero di righe sul server.
loadingInputbooleanfalseMostra una barra di avanzamento, e righe segnaposto quando non ce ne sono.
localeInputstringLOCALE_IDFormatta numeri e date, e legge i numeri digitati.
labelsInputPartial<NuiGridLabels>Ogni testo che la griglia mostra o annuncia, da tradurre.
cornersInputNuiCornersLa forma degli angoli: round, squircle, bevel, scoop, notch o square.
radiusInputNuiRadiusQuanto sono grandi gli angoli: none, small, medium, large o full.
densityInputNuiDensityQuanto spazio occupa: compact, regular o roomy.
rowActivateOutputTEmette una riga aperta con Invio o con un doppio clic.
cellEditOutputNuiGridEdit<T>Emette ogni modifica confermata.
queryChangeOutputNuiGridQueryEmette ordinamento, filtri, ricerca e pagina a ogni cambiamento.
exportCsvMetodo(options?) => stringLe righe filtrate e ordinate delle colonne visibili, in CSV.
focusCellMetodo(row: number, col: number) => voidSposta il focus su una cella; la riga -1 è l’intestazione.
clearFiltersMetodo() => voidAzzera tutti i filtri e la ricerca.

Gli input di personalizzazione che non imposti seguono l’attributo data-nui-* più vicino. Vedi la guida alla personalizzazione.

NuiGridColumn

Una colonna. Solo id e header sono obbligatori.

NuiGridColumn: Proprietà
NomeTipoPredefinitoDescrizione
idProprietàstringUnivoco; la chiave in ordinamento, filtri e stato delle colonne.
headerProprietàstringIl testo dell’intestazione.
valueProprietàkeyof T | ((row: T) => V)Una chiave della riga, o una funzione della riga. Di default è row[id].
typeProprietà'text' | 'number' | 'date' | 'boolean' | 'enum''text'Stabilisce allineamento, ordinamento, filtro ed editor.
formatProprietàIntl options | ((value, row) => string)Opzioni di Intl per numeri e date, o una funzione che produce il testo.
optionsProprietàNuiOption<V>[]Le opzioni di una colonna enum, come oggetti NuiOption.
width, minWidth, maxWidthProprietànumberIn pixel.
flexProprietànumberDivide lo spazio rimasto con le altre colonne flex.
alignProprietà'start' | 'center' | 'end'Di default dipende dal tipo: numeri e date alla fine.
pinned, hiddenProprietà'start' | 'end', booleanBlocco e visibilità iniziali della colonna.
sortable, filterable, resizable, reorderable, hideableProprietàbooleantrueOgnuna si può disattivare con false.
compareProprietà(a: V, b: V) => numberUn ordinamento personalizzato.
editable, validateProprietàboolean | ((row) => boolean), (value, row) => string | nullSe le celle si possono modificare, e un messaggio quando un valore non è valido.
setProprietà(row: T, value: V) => TCrea la riga modificata. Di default è una copia con il nuovo valore.

NuiGridCell

Disegna le celle di una colonna. Il contesto contiene la riga, il valore e il testo.

Selettore
ng-template[nuiGridCell]
NuiGridCell: Proprietà
NomeTipoPredefinitoDescrizione
nuiGridCellInputstringL’id della colonna.

NuiGridHeader

Disegna l’intestazione di una colonna.

Selettore
ng-template[nuiGridHeader]
NuiGridHeader: Proprietà
NomeTipoPredefinitoDescrizione
nuiGridHeaderInputstringL’id della colonna.

NuiGridEmpty

Cosa si vede quando non ci sono righe. Il contesto indica se le hanno nascoste i filtri.

Selettore
ng-template[nuiGridEmpty]