Javascript Array soll aller 10 sekunden immer neu eingelesen werden

Smalltalk
Antworten
Benutzeravatar
TRex
Moderator
Beiträge: 8040
Registriert: 23.11.2006 12:23:54
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: KA

Re: Javascript Array soll aller 10 sekunden immer neu eingelesen werden

Beitrag von TRex » 24.04.2021 12:03:22

Der Syntax ist

fetch(...).then(fn)

wobei fn die Funktion ist, die du danach ausführen möchtest (mit dem Ergebnis des letzten Verkettungsschritts als Parameter).

Was du geschrieben hast:

fetch(...).then
fn

Ich greif dir nochmal unter die Arme:

Code: Alles auswählen

function holedaten() {
fetch(
   'holen.php',
   { method: 'GET'}).then(foo => {
    fetch(
        'Daten/data.json',
        { method: 'GET' }
      )
      .then( response => response.json() )
      .then( json => ausgeben(json) )
    )
};

setInterval(holedaten,3000);
Du siehst den Unterschied? Dass then ein Funktionsaufruf ist und runde Klammern mit Parametern drin erwartet?

Weitere Details: foo ist das Antwort auf holen.php, die interessiert uns inhaltlich aber nicht (zumindest siehts für mich bisher so aus). Weil wir hier mehrere Zeilen haben, muss man den Funktionskörper in geschweifte Klammern packen.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

Benutzeravatar
Saebelzahltieger
Beiträge: 171
Registriert: 10.02.2011 10:27:25

Re: Javascript Array soll aller 10 sekunden immer neu eingelesen werden

Beitrag von Saebelzahltieger » 24.04.2021 12:18:26

Dankeschön, ich hatte schon mit was ähnlichen probiert der brachte mir immer syntax error, hetzt geht es. es fehlte noch eine }

Code: Alles auswählen

function holedaten() {
fetch(
   'holen.php',
   { method: 'GET'}).then(foo => {
    fetch(
        'Daten/data.json',
        { method: 'GET' }
      )
      .then( response => response.json() )
      .then( json => ausgeben(json) )
    })
};

setInterval(holedaten,3000);

Antworten