Javascript D3工具提示无法理解源代码
我的d3分机有问题- 我的问题是我不太懂源代码。我理解何时调用特定的东西,但现在它与整个扩展的关系如何 例如,在这一行:他们声明Javascript D3工具提示无法理解源代码,javascript,d3.js,Javascript,D3.js,我的d3分机有问题- 我的问题是我不太懂源代码。我理解何时调用特定的东西,但现在它与整个扩展的关系如何 例如,在这一行:他们声明 function tip(vis) { svg = getSVGNode(vis) if (!svg) return point = svg.createSVGPoint() rootElement.appendChild(node) } 但是我不明白为什么如果我使用控制台logtip我会得到这个函数。因为在代
function tip(vis) {
svg = getSVGNode(vis)
if (!svg) return
point = svg.createSVGPoint()
rootElement.appendChild(node)
}
但是我不明白为什么如果我使用控制台logtip
我会得到这个函数。因为在代码的后面,它会调用tip
,比如这里
我以前从未见过这样的情况,tip
像这样声明为一个普通函数,然后在以后向它添加方法
我更习惯于这样的事情
class Tip {
/**
* Register actions and filters, plus parse IS settings
*
* @uses add_action, add_filter, self::get_settings
* @return null
*/
function __construct() {
有人能给我解释一下这里发生了什么吗?我对在线特别感兴趣。我试图在源代码中改变方向的处理方式,因为我的实现抛出了错误
我的理解是,它首先以这种方式分配方向direction=d3TipDirection
,然后该行(130)将其重新分配给调用时传递的函数
var tip = d3.tip()
.direction(function(d) {
if (d === 'Freshly Milled Bread' || d === 'Freshly Peeled Banana'){return 'ne';}
if (d === 'Salt') {return 'nw';}
});
但当它以一种我不理解的方式操纵dir
(一种方向的派生)时,它对我来说就中断了。我无法在未定义
错误上调用应用
因此,对插件体系结构的一般概述,以及对我在方向属性和我在其中的功能方面的错误的更具体的解释,将非常有帮助,并且非常受欢迎
var tip = d3.tip()
.direction(function(d) {
if (d === 'Freshly Milled Bread' || d === 'Freshly Peeled Banana'){return 'ne';}
if (d === 'Salt') {return 'nw';}
});