访问它外部的回调函数参数的简单方法是什么
What is the easy way to access the callback function arguments outside of it?
我的代码是这样的,
var jenkins = require('jenkins')('http://192.168.1.5:8080');
var job_name = undefined;
jenkins.job.list(function doneGetting(err, list) {
if (err) throw err;
job_name = list[0].name;
});
jenkins.job.get(job_name, function(err, info){
if (err) throw err;
res.render('index', {
title: 'Jenkins API',
job_name: job_name,
job_info: info
})
});
我的问题是我无法获得job_name的值,因为它在回调中。我正在努力为此找到解决方案。尽管已经存在许多关于回调的问题,但无法找到解决方案。对不起。
提前谢谢。
您只需将
jenkins.job.get
移动到回调jenkins.job.list
jenkins.job.list(function doneGetting(err, list) {
if (err) throw err;
job_name = list[0].name;
jenkins.job.get(job_name, function(err, info){
if (err) throw err;
res.render('index', {
title: 'Jenkins API',
job_name: job_name,
job_info: info
})
});
});
还有其他解决方案,比如使用函数
jenkins.job.list(function doneGetting(err, list) {
if (err) throw err;
job_name = list[0].name;
getJob(job_name);
});
function getJob(job_name) {
jenkins.job.get(job_name, function(err, info){
if (err) throw err;
res.render('index', {
title: 'Jenkins API',
job_name: job_name,
job_info: info
})
});
}
这取决于您的模式、模块或脚本的复杂性。
相关文章:
- JQuery:向多个匹配结果添加换行符的最简单方法
- 访问对象的最简单方法'的单独财产
- 检查变量是否为字符串的简单方法
- 创建jQuery Slider的简单方法
- 你知道使用javascript游戏引擎的简单方法吗
- 解释分号的简单方法
- JavaScript:检查变量是否等于两个或多个值之一的简单方法
- 什么'这是使用jQuery将一些文本锚定到外部链接的最简单方法
- 实施会员系统的最简单方法是什么
- 每次使用 Javascript 加载页面时增加一个数字(变量)的简单方法
- .attr(“href”) 的问题!解决此问题的简单方法
- 出错时更改文本字段边框的最简单方法
- JavaScript:获取第一个月前 6 个月的日期的最简单方法
- 检查 redux 状态是否更改的简单方法
- 在CreateJS中加载视频的最简单方法
- 使用JavaScript过滤从网页复制的文本的最简单方法
- 创建在Javascript和PHP之间使用的唯一代码的最简单方法
- 什么's是处理多个js文件之间交互的简单方法,同时避免溢出全局变量
- 使用JS找出字符串中字符重复的最简单方法是什么
- 什么'这是一种基于if/if-else语句显示popover的简单方法