Ich lese ein wenig über JS Promises nach, um up-skill zu lesen.Warum JS Promises anstelle von IF/ELSE/Ternary verwenden?
Hier ist meine quandry: Sagen Sie wollen console.log('we done, bruh!')
NACH Ihrer Daten kommen.
so mit einem Versprechen, könnte man sagen:
let iWantToLogOut = function() {
let data = fetch('https://jsonplaceholder.typicode.com/users')
return new Promise((resolve) => {
resolve(data)
})
}
Und dann Entschlossenheit, die wie versprechen:
iWantToLogOut().then((dataBack)
=> databack.json())
.then((json) => {
console.log('We done, bruh! Look: ', json)
})
Also das ist großartig. Sie erhalten Ihre API-Daten zurück und dann wir protokollieren unsere Nachricht.
Aber ist es nicht nur viel einfacher zu gehen:
let data = fetch('https://jsonplaceholder.typicode.com/users');
data ? console.log('we done, bruh!') : null;
Ich bin wahrscheinlich über Vereinfachung/etwas fehlt (weil ... na ja ... ich geblieben bin), aber ich Ich möchte nur sicherstellen, dass ich Versprechungen verstehe, bevor ich mich auf Async/Await bewege.
Natürlich ist es einfacher mit wenn Block! Das einzige Problem ist, dass es nicht funktioniert :(Schade, nicht wahr? Sie haben auch 'iWantToLogOut' falsch eingerichtet. Es sollte nur' iWantToLogOut = function() {return fetch ('https: //jsonplaceholder.typicode. com/users ')} – dfsq
Wenn Sie dies tun, dann jedes Mal, wenn Sie den anderen Teil schlagen werden – Jai
@DenisTsoi: Timing hat nichts damit zu tun, und das obige würde immer zeigen "wir getan, bruh!" als das Versprechen "Fetch" ist ein truthy-Wert. –