Node.js的exec事件不会在Promise内部触发
我有这个简单的代码,这是一个承诺,你可以看到:
var exec = require('child_process').exec; return new Promise(function(resolve, reject) { var x = exec(`cd /maps && ls -la`, {}, function(err, stdout, stderr) { if (err || stderr) { reject(err + stderr); } resolve(stdout); }); x.stdout.on('data', function (data) { console.log(data); }); });
事件从来没有被解雇,而如果我从一切工作中删除承诺
你有什么线索吗?
尝试移出你的callback函数,并在console.log(data)
之后调用它。
原因可能是因为你太早解决你的诺言了。