Warum: Function addDoc() called with invalid data. Unsupported field value: undefined (found in field exerciseName in document exercises/YNVsKyV5eT3RtPSyL8i4?
Bin sehr neu in der Programmierung mit React Native und habe ein Problem, welches ich zwar an sich verstehe, aber mir bislang nicht erklären kann warum dieses überhaupt vorkommt.
Hier sind die Zeilen wodurch der Fehler entsteht:
FireBase.js
Die Werte werden aus den jeweiligen Komponenten gezogen, diese werden auch korrekt in "data" gespeichert.
Das gibt mir "console.log" von "data" aus:
[{"demoVideo": null, "description": "BlaBlaBla", "difficulty": 0, "exerciseName": "Test ", "fieldType": 1, "focus": ["Rückhand", "Vorhand"]}]
Findet jemand einen fehler?
1 Antwort
Deine Variable data ist kein Objekt, sondern ein Array, welches ein Objekt enthält. Wenn du folgend also so einen Zugriff versuchst:
data.exerciseName
ist der Wert dahinter undefined, da für das Array bisher kein Property exerciseName definiert wurde.
Entweder du speicherst in data nur ein Objekt (was den Codeausschnitten zufolge am sinnvollsten wäre) oder du musst das Objekt erst via Indexer aus dem Array extrahieren. In deinem Fall könnte der Zugriff auf das exerciseName-Property des ersten Elements im Array demzufolge so aussehen:
data[0].exerciseName