promise的实现库Q。同步异步问题。在线等
 发布于 8 年前  作者 kamendean  3676 次预览  最后一次回复是 8 年前  来自 问答 

var Q = require(‘q’); 我有funcA
function A(){ setTimeout(function(){ console.log(‘1111’); return ‘数据’; }, 5000); } funcB function B(data){ console.log(data); } 方法B的data是方法A中传递过来的,如何用nodejs的Q库来实现。。。文档看了很多,没找到

4 回复
kamendean

Q.nfcall(A).then(B); 这种方法不对

im-here

没用过Q,只用过bluebird

 function A() {
            return new Promise(function (resolve, reject) {
                setTimeout(function(){
                    resolve('A')
                },1000)
            })
        }

        function B(data) {
            console.log(data);
        }
		
		 A().then(B)
kamendean

@imhered 谢谢 在我在研究Q 想用一下 继续在线等

kamendean

已解决
需要先把A转化为Q.promise Q.promise(function (resolve, reject, notify) { setTimeout(function(){ console.log(‘1111’); return resolve(‘数据’); }, 5000); }).then( function (data) { console.log(data); } )

这样实现即可