f047_Edit-der-Namen #15
@@ -20,18 +20,13 @@
|
||||
let localName = $state(currentName);
|
||||
|
mina marked this conversation as resolved
Outdated
|
||||
let wasCancelled = $state(false);
|
||||
|
||||
// Automatisch berechneter Fehler
|
||||
let error: string = $derived(validateName(localName));
|
||||
|
||||
// Manuell steuerbarer Fehlerstatus
|
||||
let manualError = $state('');
|
||||
|
mina marked this conversation as resolved
Outdated
jared
commented
Typo editSart to editStart Typo editSart to editS**t**art
|
||||
|
||||
console.log('EditableItem: Beginn', names, editedName);
|
||||
|
||||
let isEditing = $state(false);
|
||||
let inputRef: HTMLInputElement;
|
||||
|
||||
// Validierungsfunktion
|
||||
function validateName(name: string) {
|
||||
|
jared marked this conversation as resolved
Outdated
jared
commented
The signature '(): EventDispatcher<{ editSart: {}; save: {}; delete: {}; cancel: void; }>' of 'createEventDispatcher' is deprecated. Mittlerweile wird ein Event mittels Callback function dispatched. Gucke ggf. noch einmal in die Docs. Zum Beispiel: <script type="ts"> const props: { onClick(): void; onExplode(name: string, age: number): void; } = $props(); </script><MyComponent The signature '(): EventDispatcher<{ editSart: {}; save: {}; delete: {}; cancel: void; }>' of 'createEventDispatcher' is deprecated.
Mittlerweile wird ein Event mittels Callback function dispatched. Gucke ggf. noch einmal in die Docs.
Zum Beispiel:
<script type="ts">
const props: {
onClick(): void;
onExplode(name: string, age: number): void;
} = $props();
</script>
<MyComponent
onClick={() => alert('clicked')}
onExplode={(name, age) => alert(name + ' ' + age)}
/>
mina
commented
Ich habe es angepasst, es musste einiges verändert werden, bitte schaue es dir nochmal an. Ich habe es angepasst, es musste einiges verändert werden, bitte schaue es dir nochmal an.
|
||||
const trimmed = name.trim();
|
||||
|
jared marked this conversation as resolved
Outdated
jared
commented
Villt die Variable noch besser bennennen. InternalValue oder oldValue, kann halt alles sein... Villt die Variable noch besser bennennen. InternalValue oder oldValue, kann halt alles sein...
mina
commented
Allgemein, weil es eine Komponente ist, die vielseitig einsetzbar. Es geht darum quasi den Startwert? zu speichern, für den Abbruch und den aktuellen Wert, um ein editieren in Gang zu bringen. Man könnte es auch cancelValue und EditValue nennen? Vielleicht besser? Allgemein, weil es eine Komponente ist, die vielseitig einsetzbar. Es geht darum quasi den Startwert? zu speichern, für den Abbruch und den aktuellen Wert, um ein editieren in Gang zu bringen. Man könnte es auch cancelValue und EditValue nennen? Vielleicht besser?
jared
commented
Naja, der Begriff Value bringt halt nicht, weil das quasi immer ein value ist. Daher so explizit bennen wie es geht Naja, der Begriff Value bringt halt nicht, weil das quasi immer ein value ist. Daher so explizit bennen wie es geht
|
||||
|
||||
@@ -48,18 +43,16 @@
|
||||
return '';
|
||||
}
|
||||
|
||||
// Speichern, wenn gültig und zurück an Eltern
|
||||
function commitIfValid() {
|
||||
if (!error && !wasCancelled && localName != currentName) {
|
||||
editedName = localName.trim();
|
||||
onSave(editedName, currentName); //Eltern benachrichtigen
|
||||
onSave(editedName, currentName);
|
||||
} else {
|
||||
localName = currentName;
|
||||
resetEdit();
|
||||
}
|
||||
}
|
||||
|
||||
// Abbrechen – Eingabe zurücksetzen
|
||||
function resetEdit() {
|
||||
wasCancelled = false;
|
||||
manualError = '';
|
||||
@@ -67,7 +60,6 @@
|
||||
isEditing = false;
|
||||
}
|
||||
|
||||
// Tastatursteuerung
|
||||
function handleKeydown(event: KeyboardEvent) {
|
||||
if (event.key === 'Enter') {
|
||||
event.preventDefault();
|
||||
|
||||
@@ -13,7 +13,6 @@
|
||||
|
||||
const caseList: ListItem[] = $state(data.caseList);
|
||||
|
||||
//Variabeln für EditableItem
|
||||
let names: string[] = $state(caseList.map((l) => l.name));
|
||||
let editedName: string = $state('');
|
||||
let currentName: string = $state('');
|
||||
@@ -49,7 +48,6 @@
|
||||
}
|
||||
|
||||
async function handleUpdateCase(newName: string, oldName: string) {
|
||||
console.log('Eltern, speichern erfolgreich', newName, oldName);
|
||||
try {
|
||||
const res = await fetch(`/api/list/${oldName}`, {
|
||||
method: 'PUT',
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
|
||||
export async function load({ fetch, url }) {
|
||||
export async function load({ fetch }) {
|
||||
|
||||
//const caseToken = url.searchParams.get('token');
|
||||
const adminRes = await fetch(`/api/user`)
|
||||
const user = await adminRes.json()
|
||||
|
||||
console.log("load Vorgang; ", user);
|
||||
const res = await fetch(`/api/list`, {
|
||||
const res = await fetch(`/api/list`, {
|
||||
/* headers: {
|
||||
Authorization: `Bearer ${caseToken}`
|
||||
} */
|
||||
@@ -15,7 +14,6 @@ console.log("load Vorgang; ", user);
|
||||
const data = await res.json();
|
||||
|
||||
const caseList = data.caseList
|
||||
console.log("load Vorgang; ", caseList, user);
|
||||
|
||||
return {
|
||||
caseList,
|
||||
|
||||
Bitte Console.log entfernen.