Are Promise.resolve und neue Promise (Entschlossenheit) austauschbar
Meiner Ansicht nachPromise.resolve
undnew, Promise(resolve)
sind austauschbar.
Bedenken Sie
EIN
new RSVP.Promise(function (resolve, reject) {
resolve();
}).then(function () {
return new RSVP.Promise(function (resolve) {
resolve("HI")
});
}).then(function (result) {
console.log(result);
});
B.
new RSVP.Promise(function (resolve, reject) {
resolve();
}).then(function () {
return RSVP.resolve("HI");
}).then(function (result) {
console.log(result);
});
Beide drucke "HI" wie erwartet.
So denke ich, wenn ich nichts "ablehnen" muss. Ich kann nur @ schreibRSVP.resolve();
Der Einfachheit halber.
Aber betrachten Sie dieses Beispiel:
new RSVP.Promise(function (resolve, reject) {
resolve();
}).then(function () {
return new RSVP.Promise(function (resolve, reject) {
setTimeout(function () {
resolve("HI")
}, 3000);
});
}).then(function (result) {
console.log(result);
});
Wie kann ich @ verwendRSVP.resolve();
ersetzen? Ich habe zum Beispiel versucht:
new RSVP.Promise(function (resolve, reject) {
resolve();
}).then(function () {
return setTimeout(function () {
return new RSVP.resolve("HI");
}, 3000);
}).then(function (result) {
console.log(result);
});
Dies druckt etwas anderes als "HI". Ist es also möglich, RSVP.resolve () zu verwenden? Hier? Sind diese beiden austauschbar?