问题:
大量的异步操作 如果需要顺序执行 通过回调函数执行 如果数量特别多 => 回调地狱
通过promise 解决回调地狱
使用步骤
1.封装promise 函数
function test(){
//调用promise
return new Promise((resolve,reject)=>{
//需要异步的处理
成功的时候 resolve
失败 reject
})
}
2.根据顺序 形成链式调用
test().then().then().catch()
3.捕获错误
例子:
const fs = require('fs')
//封装
function isEixt(){
return new Promise((resolve,reject)=>{
fs.stat('./hehe.js',(err,stats)=>{
if(err){
reject('文件不存在')
}else{
resolve('文件存在')
}
})
})
}
function delFile(){
return new Promise((resolve,reject)=>{
fs.unlink('./hehe.js',(err)=>{
if(err){
reject('del no ok')
}else{
r