D3会覆盖'this'变量,允许您在使用不同方法时查看当前选择 .
我还需要'this'来访问typescript中的类成员属性 . 我目前不确定如何在需要时保留两者 .
tweenArc(datum: any, index: number, attr: string) {
console.log(this);
console.log(this.classVariable);
...
}
第一个 console.log
将写出d3选择,在这种情况下是一个svg元素 .
如果我试图从类中访问成员属性,但是我不能定义函数 . console.log
返回 undefined
.
1 回答
我提出的一个解决方案是改变我定义回调的方式 . 我没有将回调作为函数放在typescript类中,而是使用lambda内联创建它,因此我可以访问在包装类中定义的选择,以及对typescript类的
this
变量的访问 .如果有更好的方式我想知道,因为这迫使一个特定的架构 .