2016-10-13 1 views
0

Я пытаюсь реализовать cubism, и я использую v2 в моем компоненте. Самый первый шаг выбора элемента DOM для диаграммы:Устранение неполадок для d3 в Polymer

d3.select("#example1").call(function(div) { 
...  
}); 

Это возвращает следующую ошибку на линии 1205 из cubism.v1.js:

Uncaught TypeError: Cannot read property 'appendChild' of null

После проверки кода, то div объект не имеет идентификатора и значение innerHtml равно всего моего html (начиная с <head> и заканчивая </body>).

Я предполагаю, что это связано с визуализацией полимера <div id='example1'></div> после того, как код работает, но я не знаю точно. Я попробовал поставить оператор select как в своем собственном <script> теге под <dom-module>, так и в функции Polymer.ready. Оба имеют одинаковый результат.

Как это исправить?

ответ

1

Я был в состоянии решить эту проблему, изменив следующим образом:

d3.select("#example1").call(function(div) { .. } 

к этому:

var chart = self.$$('#example1'); 
d3.select(chart).call(function(div) { ... } 

Как указано здесь под Automatic node finding.