promise

作者: Rui___ | 来源:发表于2019-11-05 15:11 被阅读0次

    1、在nodejs中读取文件 原生方法进行异步访问 (每一步都需要判断)

    fs.readFile('./name.txt','utf8',(err,data)=>{
        if(err){
            return console.log(err);
        }
        fs.readFile(data,'utf8',(err,data)=>{
            if(err){
                return console.log(err);
            }
            console.log(data);
        })
    })
    

    2、将回调的方法改成promise

    function readFile(...args){
        return new Promise((resolve,reject)=>{
            fs.readFile(...args,function(err,data){
                if(err)reject(err);
                resolve(data);
            })
        })
    }
    readFile('./name.txt','utf8').then(data=>{
        console.log('成功')
    },err=>{
      console.log('报错')
    })
    

    3、promise 链式调用

    // 链式调用 如果返回一个普通值 会走下一个then的成功
    // 抛出错误 then失败的方法
    // 如果是promise 就让promise执行采用他的状态
    // 是返回了一个新的promise 来实现链式调用
    readFile('./name.txt','utf8').then(data=>{
        return readFile(data,'utf8')
    },err=>{
        console.log(err)
    }).then(data=>{
        console.log(data);
    },err=>{
        console.log(err);
    })

    相关文章

      网友评论

          本文标题:promise

          本文链接:https://www.haomeiwen.com/subject/voqkmctx.html