serialize()
Beschreibung
Serialisiert die Tabellendaten in ein JSON-Objekt
Verwendung
serialize(): {
sheets: [
{
name: string,
id: string,
data: [
{
cell: string,
value?: string | number,
css?: string,
format?: string,
editor?: {
type: string, // type: "select"
options: string | array
},
locked?: boolean,
link?: {
text?: string,
href: string
}
},
// more cell objects
],
cols: [
{
width: number,
hidden: boolean
},
// more column objects
],
rows: [
{
height: number,
hidden: boolean
},
// more row objects
],
merged: [
{
from: { column: number, row: number },
to: { column: number, row: number }
},
// more objects
],
freeze: {
col: number,
row: number
}
},
// more sheet objects
],
styles: object,
formats: array
};
Rückgabewert
Die Methode gibt ein serialisiertes JSON-Objekt mit den folgenden Attributen zurück:
formats- ein Array von Objekten mit Zahlenformatenstyles- ein Objekt mit den angewendeten CSS-Klassen, wobei ein Schlüssel der Name einer Klasse und ein Wert ein Objekt mit deren Stileigenschaften istsheets- ein Array von Tabellenblatt-Objekten. Jedes Objekt enthält die folgenden Attribute:name- der Name des Tabellenblattsid- die ID des Tabellenblattsdata- ein Array von Zellobjekten. Jedes Objekt enthält das Attributcellmit der Zell-ID sowie die Attribute, die für die Zelle gesetzt wurden:value,css,format,editor,locked,linkcols- ein Array von Objekten mit Spaltenkonfigurationen. Jedes Objekt enthält die Attributewidthundhiddenrows- ein Array von Objekten mit Zeilenkonfigurationen. Jedes Objekt enthält die Attributeheightundhiddenmerged- ein Array von Objekten, wobei jedes Objekt über die Attributefromundtoeinen Bereich verbundener Zellen definiertfreeze- ein Objekt mit der Anzahl der fixierten Spalten und Zeilen,{ col: 0, row: 0 }, wenn nichts fixiert ist
Beachten Sie:
- die Attribute
mergedundfreezesind immer im Tabellenblatt-Objekt vorhanden, ebenso wie das Attributhiddenim Spalten- oder Zeilenobjekt, dasfalseist, wenn die Spalte oder Zeile sichtbar ist - die Arrays
colsundrowsdecken den Datenbereich eines Tabellenblatts ab und werden darüber hinaus erweitert, wenn eine Spaltenbreite, eine Zeilenhöhe oder einhidden-Zustand außerhalb dieses Bereichs geändert wurde. So bleiben auch benutzerdefinierte Größen leerer Spalten und Zeilen erhalten - eine Zelle gelangt in das Array
data, wenn sie einen Wert, eine CSS-Klasse, einen Editor oder den Zustandlockedhat. So bleiben auch gesperrte leere Zellen erhalten - das zurückgegebene Objekt kann unverändert an die Methode parse() übergeben werden
Beispiel
const spreadsheet = new dhx.Spreadsheet("spreadsheet", {});
spreadsheet.parse(data);
const state = spreadsheet.serialize();
Verwandter Artikel: Datenladen und -export