Я пытаюсь создать «общий» класс для графа сил D3.Когда вызывается функция graphTick()
(или любой другой метод, который кажется ...), значения членов класса равны undefined
, как если бы метод не был связан с этим экземпляром.
Интересно,Я неправильно понимаю способ написания класса JS (я из C ++ фона) или если я неправильно использую среду D3.Может быть, оба?
Я пытался заменить ....
simulation.on("tick", this.graphTick)
... на:
simulation.on("tick", function(){
/*graphTick implementation*/
})
Но тогда это выглядело так, как будто его назвалиот некоторого аномального объекта из D3, поэтому я думаю, что моя проблема, вероятно, больше связана с синтаксисом JS.
Получил установку Codepen с этим классом и быстрый тест: https://codepen.io/mrelemental/pen/VGLNLa