0
我一直在努力解决这个问题。 我新来的Javascript,所以有些东西我还是不明白。 我创建了函数linkBuilder从JSON文件中提取一些数据。我测试了parseLine它工作。将函数分配给var不起作用。价值仍然'未定义'
links=[];
let linkBuilder = function(){
d3.text('prova2utenti.json',function(err,data){
if (err) throw err;
var elements = data.split('\n');
for (var i=0, l=elements.length; i<l; i++){
links.concat(parseLine(elements[i]));
console.log(links);
}
});
}
的问题是,当我尝试使用此代码创建我的图表中的联系:在我的网页上
links.forEach(function(link) {
link.source = nodes[link.source] || (nodes[link.source] = {name: link.source});
link.target = nodes[link.target] || (nodes[link.target] = {name: link.target});
});
没有显示,这就像VAR 链接从不初始化。我想这是因为吊装,但我不知道,无论如何我不知道如何解决。 任何帮助真的很感激。
何时以及如何调用'linkBuilder'函数? –
“像var链接永远不会初始化_”这不是,你认为'forEach'多少次会循环一个空数组.. ..? +'link.source =节点[link.source] || (节点[link.source] = {name:link.source});'不会做你认为它做的事,而是一个语法错误。 – Teemu
除了你没有调用'linkBuilder'这个事实,这个'forEach'在哪里呢?在'd3.text'里面还是外面?提示:它**不能**在外面。 –