Ich bin neu so Entschuldigung für den Mangel an Informationen.Wie Javascript korrekt verwendet wird Promise-basierte Funktionen
Ich habe Promise-basierte Funktion, die ein Objekt zurückgibt. Ich übergebe dann einen Schlüsselwert von dieser Eigenschaft, um ein anderes Objekt zu erstellen.
Ich bekomme ein Problem, wo mein neues Objekt, das ich erstelle, undefined zurückgibt. Ich denke das liegt an der asynchronen Natur von JS?
siehe unten ..
post(postObject).then((result) => {
console.log(result); // token found in returned object. See OBJ1 below
const cookie = {
name: 'jwtToken',
value: result.token,
path: '/',
domain: '.' + APP_HOST,
secure: false
};
console.log(cookie); // result.token not returned. Getting undefined
page.addCookie(cookie);
});
cookie.value kommt zurück als undefiniert
Ich brauche die result.token als Cookie-Wert zu übergeben können.
Wenn ich Protokoll Ergebnis loggen, kann ich den Token Schlüsselwert generiert sehen.
Unten ist, was von 'Ergebnis' zurückgegeben wird. Ich versuche, Token zu bekommen, also mache ich result.token. Aber das gibt mir die ganze Zeit "undefiniert".
OBJ1:
{"token":"skjdhjkshds.sdhskjdhkshdjs.shdkjshdkjsh","isCartMerged":false}
Wo loggen Sie den 'cookie'? Wenn Sie es außerhalb dieser Funktion loggen, könnten Sie eine leere Zeichenfolge erhalten. – raiyan
Konsolenmeldungen in meiner Frage hinzugefügt, um zu zeigen, was passiert. –
kommt OBJ1 als String zurück? Können Sie JSON.parse() ausprobieren? [siehe] (https://jsfiddle.net/zn7c70oe/1/) – scottjustin5000