Zum Hauptinhalt springen

Typen-Referenz

Alle Typen werden aus @dhx/react-spreadsheet oder @dhtmlx/trial-react-spreadsheet exportiert.

import type { SheetData, CellData, SpreadsheetRef /* ... */ } from "@dhtmlx/trial-react-spreadsheet";

CellData​

Der deklarative Status einer einzelnen Zelle. Alle Eigenschaften sind optional; ausgelassene Eigenschaften behalten ihren aktuellen Wert bei Aktualisierungen bei.

EigenschaftTypBeschreibung
valuestring | numberZellenwert: Text, Zahl oder Formelzeichenkette (mit = als Prafix).
cssstringCSS-Klassenname(n), die auf Schlussel in der styles-Map auf oberster Ebene verweisen.
formatstringZahlenformatmaske oder Alias (z. B. "currency" oder "#,##0.00").
lockedbooleanGibt an, ob die Zelle gesperrt ist (vor der Bearbeitung geschutzt).
validationstring | string[]Dropdown-Optionen fur die Datenvalidierung.

RowConfig​

Zeilen-Metadaten. Nur Zeilen mit einer nicht standardmassigen Konfiguration benotigen Eintrage.

EigenschaftTypBeschreibung
heightnumberZeilenhohe in Pixeln.
hiddenbooleanGibt an, ob die Zeile ausgeblendet ist.

ColConfig​

Spalten-Metadaten. Nur Spalten mit einer nicht standardmassigen Konfiguration benotigen Eintrage.

EigenschaftTypBeschreibung
widthnumberSpaltenbreite in Pixeln.
hiddenbooleanGibt an, ob die Spalte ausgeblendet ist.

MergedRange​

Definiert einen zusammengefuhrten Zellbereich mithilfe von nullbasiert indizierten Zeilen-/Spaltenkoordinaten.

EigenschaftTypBeschreibung
from{ row: number; column: number }Obere linke Ecke der Zusammenfuhrung (0-indiziert).
to{ row: number; column: number }Untere rechte Ecke der Zusammenfuhrung (0-indiziert).

Beispiel:

// A1:B2 zusammenfuhren
const merge: MergedRange = {
from: { row: 0, column: 0 },
to: { row: 1, column: 1 },
};

FreezeConfig​

Konfiguration der fixierten Bereiche fur ein Blatt.

EigenschaftTypBeschreibung
colnumberSpalten bis zu dieser 0-indizierten Spaltennummer fixieren. undefined = keine Spaltenfixierung.
rownumberZeilen bis zu dieser 0-indizierten Zeilennummer fixieren. undefined = keine Zeilenfixierung.

SheetFilter​

Filterkonfiguration fur eine Spalte innerhalb eines Blatts.

EigenschaftTypBeschreibung
cellstringZellreferenz, die die gefilterte Spalte identifiziert (z. B. "A1").
rulesIFilterRules[]Anzuwendende Filterregeln. Ein leeres Array loscht den Filter.

SheetSort​

Sortierkonfiguration fur eine Spalte innerhalb eines Blatts.

EigenschaftTypBeschreibung
cellstringZellreferenz oder Bereich fur die Sortieroperation (z. B. "B1" oder "A1:E8"). Verwenden Sie einen Bereich, um mehrere Spalten gemeinsam zu sortieren und dabei die Zeilenintegritat zu wahren.
dir1 | -1Sortierrichtung: 1 = aufsteigend, -1 = absteigend.

SheetData​

Vollstandiger deklarativer Status fur ein einzelnes Tabellenblatt.

EigenschaftTypErforderlichBeschreibung
idIdJaEindeutiger Blattbezeichner. Muss uber Renders hinweg stabil sein.
namestringJaAnzeigename auf dem Blatt-Tab.
cellsRecord<string, CellData>JaZelldaten, die durch Zellreferenz indiziert sind (z. B. "A1" oder "B2"). Nur Zellen mit nicht standardmassigen Daten benotigen Eintrage.
rowsRecord<number, RowConfig>NeinZeilenkonfiguration, die durch 0-indizierte Zeilennummer indiziert ist.
colsRecord<number, ColConfig>NeinSpaltenkonfiguration, die durch 0-indizierte Spaltennummer indiziert ist.
mergedMergedRange[]NeinZusammengefuhrte Zellbereiche.
freezeFreezeConfigNeinKonfiguration der fixierten Bereiche.
filterSheetFilterNeinSpaltenfilter-Konfiguration. Auf undefined setzen, um zu loschen.
sortSheetSortNeinSortierkonfiguration.

Beispiel:

const sheet: SheetData = {
id: "sheet1",
name: "Inventory",
cells: {
A1: { value: "Product", css: "bold" },
B1: { value: "Quantity", css: "bold" },
A2: { value: "Laptop" },
B2: { value: 42 },
},
cols: { 0: { width: 200 } },
freeze: { row: 1 },
};

SearchConfig​

Kontrollierter Suchstatus. Ubergeben Sie ein Objekt, um die Suche auszulosen/zu aktualisieren; ubergeben Sie undefined, um sie zu schliessen.

EigenschaftTypErforderlichBeschreibung
querystringJaZu suchender Text.
openbooleanNeinGibt an, ob die integrierte Suchoberfla che geoffnet werden soll. Standard: false.
sheetIdIdNeinSuche auf ein bestimmtes Blatt anhand der ID einschranken.

SpreadsheetLocale​

Lokalisierungskonfiguration fur UI-Bezeichnungen und Formelnamen.

EigenschaftTypBeschreibung
localeRecord<string, string>Uberschreibungen fur UI-Zeichenketten. Schlussel entsprechen dem Locale-Worterbuch der Bibliothek.
formulasRecord<string, [string, string?][]>Lokalisierte Formelnamen, gruppiert nach Kategorie. Jeder Eintrag ist ein Tupel: [localizedName, optionalDescription?].

SpreadsheetTheme​

type SpreadsheetTheme = "light" | "dark" | "contrast-light" | "contrast-dark" | string;

Integrierte Farbthemes. Akzeptiert auch benutzerdefinierte Theme-Namens-Zeichenketten.

IExecuteConfig​

Konfiguration der Aktionsausfuhrung, die an onBeforeAction / onAfterAction ubergeben wird. Die Struktur variiert je nach Aktionstyp.

EigenschaftTypBeschreibung
rownumberIndex der Zielzeile.
colnumberIndex der Zielspalte.
targetunknownAktionsspezifisches Ziel.
valunknownNeuer Wert.
prevunknownVorheriger Wert.
actionActions | stringAktionsbezeichner.
groupActionActions | stringBezeichner der ubergeordneten Gruppenaktio n.
cellstringZellreferenz (z. B. "A1").
pageIdIdID des Zielblatts.
pageNamestringName des Zielblatts.
[key: string]unknownWeitere aktionsspezifische Eigenschaften.

SpreadsheetRef​

Imperatives Handle, das uber React.forwardRef bereitgestellt wird. Ermoglicht direkten Zugriff auf die zugrunde liegende DHTMLX Spreadsheet-Instanz fur Operationen, die sich nicht auf deklarative Props abbilden lassen.

EigenschaftTypBeschreibung
instanceISpreadsheet | nullDie zugrunde liegende Widget-Instanz. null vor der Initialisierung und nach dem Aushangen.

Beispiel:

const ref = useRef<SpreadsheetRef>(null);

// Daten serialisieren
const data = ref.current?.instance?.serialize();

// Programmgesteuerte Auswahl
ref.current?.instance?.selection.setSelectedCell("A1:C5");

// Ruckgangig/Wiederholen
ref.current?.instance?.undo();
ref.current?.instance?.redo();

Actions-Enum​

Bekannte Spreadsheet-Aktionsbezeichner. Werden in onBeforeAction / onAfterAction fur typensicheres Aktions-Matching verwendet. Die | string-Union bei Handler-Parametern ermoglicht Vorwartskompatibilitat mit kunftigen Aktionen.

WertBeschreibung
setCellStyleCSS-Stil auf Zelle(n) anwenden.
setCellValueZellenwert setzen.
setCellFormatZahlenformat auf Zelle(n) setzen.
removeCellStylesCSS-Stile von Zelle(n) entfernen.
lockCellZelle(n) sperren oder entsperren.
deleteRowZeile(n) loschen.
addRowZeile(n) einfugen.
deleteColumnSpalte(n) loschen.
addColumnSpalte(n) einfugen.
groupActionBatch-Aktion (mehrere Unteraktionen).
groupRowActionBatch-Zeilenaktion.
groupColActionBatch-Spaltenaktion.
addSheetNeues Blatt hinzufugen.
deleteSheetBlatt loschen.
renameSheetBlatt umbenennen.
clearSheetAlle Daten in einem Blatt loschen.
clearAusgewahlte Zellen loschen.
resizeColSpaltenbreite andern.
resizeRowZeilenhohe andern.
setValidationDatenvalidierung fur Zelle(n) festlegen.
sortCellsZellen sortieren.
insertLinkHyperlink einfugen.
fitColumnSpaltenbreite automatisch an den Inhalt anpassen.
filterSpaltenfilter anwenden oder andern.
mergeZellen zusammenfuhren.
unmergeZusammenfuhrung von Zellen aufheben.
toggleFreezeFixierte Bereiche umschalten.
toggleVisibilitySichtbarkeit von Zeilen/Spalten umschalten.

Handler-Typ-Aliase​

Komfort-Aliase fur die Funktionssignaturen, die von Event-Callback-Props verwendet werden. Importieren Sie diese, um Ihre Handler-Funktionen explizit zu annotieren.

TypSignaturVerwendet von
BeforeActionHandler(action: Actions | string, config: IExecuteConfig) => boolean | voidonBeforeAction
AfterActionHandler(action: Actions | string, config: IExecuteConfig) => voidonAfterAction
BeforeCellHandler(cell: string) => boolean | voidonBeforeSelectionSet, onBeforeSelectionRemove, onBeforeFocusSet
AfterCellHandler(cell: string) => voidonAfterSelectionSet, onAfterSelectionRemove, onAfterFocusSet
BeforeEditHandler(cell: string, value: string) => boolean | voidonBeforeEditStart, onBeforeEditEnd
AfterEditHandler(cell: string, value: string) => voidonAfterEditStart, onAfterEditEnd
BeforeSheetHandler(sheet: ISheet) => boolean | voidonBeforeSheetChange
AfterSheetHandler(sheet: ISheet) => voidonAfterSheetChange

SpreadsheetConfigProps​

type SpreadsheetConfigProps = Omit<
ISpreadsheetConfig,
"leftSplit" | "topSplit" | "dateFormat" | "timeFormat"
>;

Basistyp fur Komponenten-Props. Stellt alle ISpreadsheetConfig-Konstruktoroptionen als flache Props bereit.

Erneut exportierte Upstream-Typen​

Diese Typen werden der Einfachheit halber aus @dhx/ts-spreadsheet erneut exportiert:

TypBeschreibung
ISpreadsheetHauptinterface der Spreadsheet-Widget-Instanz.
ISpreadsheetConfigKonstruktor-Konfigurationsinterface.
ISheetBlatt-Instanz-Interface (verwendet in Blatt-Event-Callbacks).
IFormatsDefinition benutzerdefinierter Zahlenformate.
IFilterRulesKonfiguration von Filterregeln.
IFilterFilter-Instanz-Interface.
IStylesListStildefinitions-Map.
IDataWithStylesDatenstruktur mit eingebetteten Stilen (verwendet von serialize()/parse()).
ICellInfoZellinformationen, die von Widget-Methoden zuruckgegeben werden.
FileFormatDateiformat fur das Laden von Daten (z. B. "json" oder "xlsx").
ToolbarBlocksBezeichner fur Toolbar-Blocke (z. B. "default", "undo" oder "font").
FilterConditionsEnum der verfugbaren Filterbedingungstypen.
IdGenerischer Bezeichnertyp (string | number).