在下面的代码段中需要一些帮助。 目标:如何在data.nick中存储数组并将其显示在手柄中(每个单独分开)?
JS:
function(data, callback){
var URL = 'url';
request(URL, function(err, response, body) {
if(response.statusCode == 200){
var json = JSON.parse(body);
for(var i = 0; i < json['nick'].length; i++){
var s = [];
s = json['nick'][i].id;
}
data.nick = s;
console.log(data.nick);
callback(null,data);
}
});
},
问题: data.nick
仅存储s
为数组时查询的最后一个对象。
修改
数组已修复,现在的问题是如何使用快速手柄显示html中的每个项目
我试图使用{{#each info.nick}}
,{{#list info.nick}}
,{{info.nick.[0]}}
等,但它无效。
我有阵列
[ 432, 3, 104, 222, 30, 11, 62, 421, 17, 412 ]
,我会使用快速把手展示每一个。
答案 0 :(得分:0)
仅使用id
ge function(data, callback){
var URL = 'url';
request(URL, function(err, response, body) {
if(response.statusCode == 200){
var json = JSON.parse(body);
data.nick = json['nick'].map(function(e,i){return e.id});
console.log(data.nick);
callback(null,data);
}
});
},
属性
:
DesiredCapabilities caps = DesiredCapabilities.chrome();
caps.setCapability("chrome.switches", Arrays.asList("--disable-javascript"));
答案 1 :(得分:0)
您正在重置每个循环上的数组s
为空。除此之外,您没有向数组添加项,而是使用单个值json['nick'][i].id
覆盖数组。这就是为什么你只看到最后一项,因为所有其他的丢失了。您需要在for循环之前定义数组,并使用.push()
向其添加项目:
...
var s = [];
for(var i = 0; i < json['nick'].length; i++){
s.push(json['nick'][i].id);
}
data.nick = s;
...
请注意,data.nick = s
是一个浅层副本。