Hallo,
ich bin aktuell dabei, das ich für meine Seite Daten aus meiner Datenbank lese und einfüge. als Backend(für den DB-Zugriff) verwende ich Node.JS um eine API schnittstelle zu haben.
Der Datenbankzugriff funktioniert auch, ich kann mir die Daten per Console.log richtig in json-Format anzeigen.
Die Daten werden per js über eine Funktion mit der Funktion Fetch abgeholt.
Wenn ich nun die Daten brauche (In einer Tabelle soll neben den Kundendaten auch die Anzahl der Projekte/Angebote stehen), erstelle ich die Daten und das Format in einer Function bereit zum übergeben. in dieser Function (getitems) wird mittels foreach schleife das übergebene Array (json Daten der einzelnen Kunden) durchlaufen und dabei soll die Anzahl der Projekte/angebote gezählt werden. Hierfür habe ich eine eigen Function(offers) erstellt, die die Daten mittels API schnittstelle je nach Kunden_ID abruft. wenn ich diese Function jedoch aufrufen will, dann kommt immer die Fehlermeldung
leider finde ich dazu keinen google beitrag, der mir in dieser Situation hilfreich war. die Function offers habe ich von der function test kopiert. Function test funktioniert problemlos.
ich bin aktuell dabei, das ich für meine Seite Daten aus meiner Datenbank lese und einfüge. als Backend(für den DB-Zugriff) verwende ich Node.JS um eine API schnittstelle zu haben.
Der Datenbankzugriff funktioniert auch, ich kann mir die Daten per Console.log richtig in json-Format anzeigen.
Die Daten werden per js über eine Funktion mit der Funktion Fetch abgeholt.
Wenn ich nun die Daten brauche (In einer Tabelle soll neben den Kundendaten auch die Anzahl der Projekte/Angebote stehen), erstelle ich die Daten und das Format in einer Function bereit zum übergeben. in dieser Function (getitems) wird mittels foreach schleife das übergebene Array (json Daten der einzelnen Kunden) durchlaufen und dabei soll die Anzahl der Projekte/angebote gezählt werden. Hierfür habe ich eine eigen Function(offers) erstellt, die die Daten mittels API schnittstelle je nach Kunden_ID abruft. wenn ich diese Function jedoch aufrufen will, dann kommt immer die Fehlermeldung
TypeError: offers is not a function or its return value is not iterable
leider finde ich dazu keinen google beitrag, der mir in dieser Situation hilfreich war. die Function offers habe ich von der function test kopiert. Function test funktioniert problemlos.
Javascript:
async function test() {
await fetch("http://127.0.0.1:8080/api/user")
.then((response) => {
response.json().then((data) =>{
allcustomers(data);
});
});
}
async function offers(id){
await fetch("http://127.0.0.1:8080/api/offers/" +id) //Abruf Angebote nach Kunden_ID
.then((response) => {
response.json().then((data) =>{
console.log("funktioniert");
return(data);
});
});
return [null];
}
function allcustomers(data) {
let test = document.querySelector("#testrow"); // noch ändern
const result = getitems(data);
test.innerHTML = result;
}
function getitems(data){
let result;
let [count] = offers(1); //testzugriff -> hier bringt er die Fehlermeldung
console.log(count);
data.map((item)=>{
result += "<tr><td>" + item.Name + "</td>";
result += "<td>" + item.Adresse + "</td>";
result += "<td>" + item.PLZ + "</td></tr>";
});
return result;
}