我正在尝试连接3Djs中的节点:
const linkedByIndex = {};
d3GraphData.links.forEach(d => {
linkedByIndex[`${d.source.index},${d.target.index}`] = 1;
console.log(d.source.index + " " + d.target.index);
// console.log(a.index + " " b.index);
});
function isConnected(a, b) {
alert("conectado");
return linkedByIndex[`${a.index},${b.index}`] ||
linkedByIndex[`${b.index},${a.index}`] ||
a.index === b.index;
}
function fade(opacity) {
alert("fade");
return function(d) {
node.style("stroke-opacity", function(o) {
thisOpacity = isConnected(d, o) ? 1 : opacity;
this.setAttribute('fill-opacity', thisOpacity);
return thisOpacity;
});
link.style("stroke-opacity", function(o) {
return o.source === d || o.target === d ? 1 : opacity;
});
};
}
当我运行程序时:
console.log(a.index + " " b.index);
向我显示以下信息:
0 1
1 2
2 3
3 4
和alert fade
正常工作,但是alert conectado
没有出现。
有没有想念的东西?欢迎任何建议。
谢谢