Ich hatte auch dieses frustrierende Problem, ich habe die setTimeout()
und die JSON.stringify
und JSON.parse
Lösungen ausprobiert, obwohl ich wusste, dass es nicht funktionieren würde, da ich denke, dass es hauptsächlich JSON- oder Promise-bezogene Probleme sind, und natürlich hat es nicht funktioniert. In meinem Fall habe ich jedoch nicht sofort bemerkt, dass es einen dummen Fehler gab. Ich habe tatsächlich versucht, auf einen Eigenschaftsnamen mit einer anderen Schreibweise zuzugreifen. Es sieht ungefähr so aus:
const wrongPropName = "SomeProperty"; // Großbuchstabe "S"
const correctPropName = "someProperty"; // Kleinbuchstabe "s"
const object = { someProperty: "Hallo Welt!" };
console.log('Zugriff auf "SomeProperty":', object[wrongPropName]);
console.log('Zugriff auf "someProperty":', object[correctPropName])
Es hat eine Weile gedauert, bis ich bemerkt habe, dass die Eigenschaftsnamen in meinem Fall entweder alle klein oder einige gemischt groß- und kleinbuchstabig sein können. Es stellte sich heraus, dass eine Funktion in meiner Webanwendung etwas durcheinander gebracht hat, um meine Eigenschaftsnamen (sie hat ein .toLowerCase()
neben den generierten Schlüsselnamen).
Also, die Lektion gelernt, prüfe die Schreibweise der Eigenschaftsnamen genauer.