promise 如何处理后一个then需要前一个then的数据?
发布于 8小时前 作者 XGHeaven 46 次浏览 来自 问答

比如现在有一个情景,就是传入一个token,根据这个token请求一次网络,然后获取用户ID,讲获取的用户ID访问数据库,获取用户信息,讲用户信息和ID一起写入到一个文本中去,在这样的一个流程中,传统的是需要这样的。

request(token)
    .then(function(id) {
        mongodb
            .find(id).toArray()
            .then(function(info){
                fs.writeFile(filename, info+id)
                    .then(function(){console.log('success');}
            })
    })

但是如果按照这样的话,如果需求要多的话,似乎又掉入了回调地狱,那么有什么问题可以解决这个问题呢?就是后面的异步操作都需要前面异步操作的值,或者自定义的值?

1 回复

用链式调用写法,第一个 then 的返回值是第二个 then 的参数

回到顶部