我有以下代码来处理双击......
var onClick = function (e) {
if ((d3.event.timeStamp - last) < 500) {
return callback(e);
}
last = d3.event.timeStamp;
};
但是这会回来......
{
"uuid":"e2befb22-849b-4b56-91b4-8c297311491b",
"title":"JRG-024",
"weight":3,
"x":-4120.238083042915,
"y":2759.9261895569307,
"px":-4102.444457966419,
"py":2753.0045790866943
}
注意x,y,px,py, etc
我想避免这些并获取最初绑定的干净数据。我也试过return callback(d3.select(this).data()[0])
,但这仍然会返回位置数据。有没有办法从响应中删除这些数据,而不是过滤?
答案 0 :(得分:0)
以下是基于我的评论
的示例d3.select('body')
.selectAll('.data')
.data([10,20,30])
.enter()
.append('div')
.attr('class', 'data');
var node = d3.select('.data').node();
console.log(node.__data__);
控制台输出为10
答案 1 :(得分:0)
我最终只是把所有东西放在一个属性中并像这样传递它。类似的东西...
var d3Data = data.map(function(item){
var result = {
...
originalData : item
}
return result
})
不接受,因为这是hacky hacky hacky。