javascript - promise 如何将第一个then得到的结果传递到最后
高洛峰
高洛峰 2017-04-11 10:58:33
[JavaScript讨论组]

例如:

var arr = [];

var pro = (val) => {
    return new Promise((resolve, reject) => {
        if (true) {
            return resolve(arr.push(val));
        }
    })
}
pro(2).then((val) => {
    console.log(val);
    return pro(4);
}).then((val) => {
    return pro(236);
}).then((val) => {
    console.log(arr)
})

这种怎么封装成一个promise

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
迷茫

这也是一种方法

pro(2).then((val) => {
    console.log(val);
    return {a:pro(4),b:val};
}).then((val) => {
    val.c = pro(236)
    return val;
}).then((val) => {
    console.log(arr,val)
伊谢尔伦

如果可以的话,还是用async函数比较方便。 或者是

const result = {}
promise1.then((result1)=>{result.result1 = result1;return promise2 })
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号