我认为在使用ES6 Promises时应该可以链接.then()方法.换句话说,我认为当一个承诺解决传递给函数解析值应该传递给任何链接,然后处理程序.如果是这样的话怎么来的值来在后面不确定的链接,然后下面的处理程序?
function createPromise() { return new Promise((resolve) => { resolve(true); }); } createPromise() .then((value) => { console.log(value); // expected: true, actual: true }) .then((value) => { console.log(value); // expected: true, actual: undefined });
Scimonster.. 8
每个都then()
可以返回一个值,该值将用作下一次then()
调用的已解析值.在你的第一个then()
,你不返回任何东西,因此value
在下一个回调中未定义.返回value
第一个,使其在第二个可用.
function createPromise() {
return new Promise((resolve) => {
resolve(true);
});
}
createPromise()
.then((value) => {
console.log(value); // expected: true, actual: true
return value;
})
.then((value) => {
console.log(value); // expected: true, actual: true
});
每个都then()
可以返回一个值,该值将用作下一次then()
调用的已解析值.在你的第一个then()
,你不返回任何东西,因此value
在下一个回调中未定义.返回value
第一个,使其在第二个可用.
function createPromise() {
return new Promise((resolve) => {
resolve(true);
});
}
createPromise()
.then((value) => {
console.log(value); // expected: true, actual: true
return value;
})
.then((value) => {
console.log(value); // expected: true, actual: true
});