14.Promise对象

2019-09-25  本文已影响0人  讲武德的年轻人

尝试删除hehe.js文件的Promise示例:

fs = require('fs');

function delfile(){
    return new Promise((resolve,reject)=>{
        fs.unlink('./hehe.js',(err)=>{
            if(err){
                reject("文件不存在");
                console.log("删除出错!")
            }else{
                resolve("妥妥的")
                console.log("删除成功");
            }
        })
    })
}
delfile()
.then((msg)=>{
    console.log("then删除结果"+msg)
})
.catch((fault)=>{
    console.log("err删除结果"+fault)
})
hehe.js文件不存在的,所以执行结果是:

链式调用的一个例子

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{
        resolve('del ok')
      }
    })
  })
}

isEixt()
.then(()=>{
  console.log('is exit 的成功处理')
  return delFile()
})
.then(()=>{
  console.log('删除文件成功处理')
})
.catch((err)=>{
  console.log('catch')
  console.log(err)
})
// 链式调用  一组链式调用中只需要一个catch
上一篇 下一篇

猜你喜欢

热点阅读