我试图链接一系列Promises 以便第二个承诺将在第一个解决之后开始,依此类推。我不明白我怎么不能让它正常工作。
这是我的演示代码:
const promise1 = new Promise((resolve, reject) => { setTimeout(resolve, 5000, 'a'); });
const promise2 = new Promise((resolve, reject) => { setTimeout(resolve, 5000, 'b'); });
const promise3 = new Promise((resolve, reject) => { setTimeout(resolve, 5000, 'c'); });
promise1.then(val => {
console.log('promise 1', val);
promise2.then(val2 => {
console.log('promise 2', val2);
promise3.then(val3 => {
console.log('promise 3', val3);
});
});
});
Run Code Online (Sandbox Code Playgroud)
所以我对这段代码的期望是这样的:
--- 5 seconds passes ---
// console outputs: 'promise 1a'
--- 5 seconds passes ---
// console …Run Code Online (Sandbox Code Playgroud)