Каков рекомендуемый шаблон в D3 при абстрагировании «компонентов»?привязка данных к родительскому узлу в D3 вместо выбора - шаблон
Предположим, у меня есть список. Обычно я хотел бы сделать
d3.select('ol')
.selectAll('li')
.data(array)
.enter()
.append('li')
.text(_.property('label'))
Однако, когда абстрагирования на это в компонент, в месте использования, я хотел бы просто сделать
d3.select('ol')
.data(array)
.call(component)
Проблема заключается в том, что данные должны быть связаны .selectAll
, поэтому людям нужно будет делать .selectAll
по месту использования, но это нарушает абстракцию (люди должны знать, какой тип элемента будет добавляться этим компонентом)
Спасибо. Я не знал, что D3 задает '.call()' ed функцию 'this' для выбора. В любом случае, я думаю, что 'selection.datum()' будет возвращать данные, я попробую это. Но если нет, эта версия будет работать. –
Спасибо, Питер за то, что я изменил свой код. Это должен быть правильный ответ. – toshi