eine Sammlung von dataprocessor-Methoden
Sie können eine neue DataProcessor-Instanz mit der Methode createDataProcessor erstellen. Es gibt auch eine ältere Möglichkeit, eine Instanz über den Konstruktor dataProcessor zu erzeugen.
Das dataprocessor-Objekt beinhaltet die folgenden Methoden und Events:
const dp = gantt.createDataProcessor({
url: "/api",
mode: "REST",
});
dp.attachEvent("onAfterUpdate", (id, action, tid, response) => {
console.log("Updated task:", id);
});
const dp = gantt.createDataProcessor({
url: "/api",
mode: "REST",
});
const handlerId = dp.attachEvent("onAfterUpdate", (id, action, tid, response) => {
console.log("Updated task:", id);
});
// entfernt den Event-Listener
dp.detachEvent(handlerId);
const status = dp.getState(id);
dp.ignore(() => {
// Änderungen hier werden nicht gespeichert
gantt.addTask({
id: 10,
text: "Task #5",
start_date: "03-02-2025",
duration: 5
});
});
Dies ist nützlich, um Daten hinzuzufügen oder zu entfernen, wenn Sie vermeiden möchten, dass diese Änderungen zum Server gesendet werden.
Die Methode dp.ignore() verhält sich ähnlich wie gantt.silent().dp.setTransactionMode("POST", true);
Wenn Sie benutzerdefinierte HTTP-Header oder zusätzliche Daten mit den Anfragen senden möchten, können Sie als ersten Parameter ein Objekt mit folgenden Eigenschaften übergeben:
dp.setTransactionMode({
mode: "POST",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
"Accept-Language": "fr-FR"
},
payload: {
"user_id": "12"
}
}, true);
true
(Standard) zum Markieren als aktualisiert, false
zum Markieren als nicht aktualisiert"updated"
dp.setUpdated(1);
dp.setUpdated(2, true, "deleted");
dp.attachEvent("onAfterUpdate", (id, action, tid, response) => {
if (action === "error") {
alert(`Serverfehler: ${response.message}`);
}
});
Dies sind die möglichen Antwort-Status:
updated
inserted
deleted
invalid
error
dp.attachEvent("onBeforeDataSending", (id, state, data) => {
// Eigene Logik vor dem Senden der Daten
return true;
});
Dieses Event wird für jede Datenaktualisierungsanfrage ausgelöst (nach onBeforeUpdate
).
Wenn der Handler false
zurückgibt, werden die Daten nicht an den Server gesendet.
Mögliche Antwort-Status:
updated
inserted
deleted
invalid
error
dp.attachEvent("onBeforeUpdate", (id, state, data) => {
// Eigene Logik vor der Aktualisierung
return true;
});
Dieses Event wird für jeden zu aktualisierenden Datensatz ausgelöst und vor onBeforeDataSending
.
Wenn hier false
zurückgegeben wird, wird das Senden der Daten abgebrochen.
Mögliche Antwort-Status:
updated
inserted
deleted
invalid
error
true
, um eine Markierung hinzuzufügen, false
, um sie zu entfernendp.attachEvent("onRowMark", (id, state, mode, invalid) => {
// Eigene Logik vor dem Markieren eines Elements
return true;
});
Dieses Event kann blockiert werden. Wenn false
zurückgegeben wird, wird das Element nicht markiert.