promise
在多层嵌套回调时,写完的代码层次过多,很难进行维护和二次开发
- 洗菜做饭。
- 坐下来吃饭。
- 收拾桌子洗碗。
正确
let state = 1;
function step1(resolve, reject) {
console.log("1.洗菜做饭");
if (state == 1) {
resolve("洗菜做饭完成")
} else {
reject("洗菜做饭--出错")
}
}
function step2(resolve, reject) {
console.log("2.坐下来吃饭");
// state = 3;
if (state == 1) {
resolve("坐下来吃饭完成")
} else {
reject("坐下来吃饭--出错")
}
}
function step3(resolve, reject) {
console.log("3.收拾桌子洗碗");
if (state == 1) {
resolve("收拾桌子洗碗完成")
} else {
reject("收拾桌子洗碗--出错")
}
}
new Promise(step1).then(
function (val) {
console.log(val);
return new Promise(step2)
}
).then(function (val) {
console.log(val);
return new Promise(step3)
}).then(
function (val) {
console.log(val);
return val
}
)
错误
state = 3
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。