添加新参数以承诺所有链

Add new parameter to promise all chain

我使用了以下代码,它按预期工作,现在我需要添加

modifyOpt()

函数,目前正在运行,在 return 中我传递了 args[2] 这是有效的,现在我需要添加额外的东西...... 我还需要将 return(端口)从 portscanner.findAPortNotInUseAsync 发送到 modifyOpt(),就像 modifyOpt(port) 我应该怎么做?

return Promise.all([
    fs.readFileAsync(filePath, 'utf8').then(pars.getEx.bind(null, 'user')), 
    portscanner.findAPortNotInUseAsync(3000, 4000, 'localhost'),
    modifyOpt()

]).then(function(args) {
    return processExe('exec', args[0], args[1],args[2]);
})

只需将 modifyOpt 链接在 portscanner.findAPortNotInUseAsync(…) 承诺之后,并使用 then 来获取履行值作为参数。
如果你需要使用它的结果两次,只需将结果两次传递给 processExec.

return Promise.all([
    fs.readFileAsync(filePath, 'utf8').then(pars.getEx.bind(null, 'user')), 
    portscanner.findAPortNotInUseAsync(3000, 4000, 'localhost').then(modifyOpt)
]).then(function(args) {
    return processExe('exec', args[0], args[1], args[1]);
})