Я использую библиотеку d3.js для генерации содержимое на основе данных
Вот упрощенный пример.
data_arr = [0,1,2,3,4];
d3.select("#mylist").selectAll('li').data(data_arr).enter().append("li").html(
function(d)
{
var element = document.createElement('div');
element.innerHTML = '<div id="innerDiv">' + d + '</div>';
return element.innerHTML;
});
Если я изменю свой массив, например, новые данные будут [5,3]. Как лучше всего перепривязать и показать новый HTML? нужно снова вызывать одно и то же предложение или это лучше?
Рассмотрим случай более сложной структуры данных. то есть
data_arr = [obj1, obj2, obj3, obj4];
и
element.innerHTML = '<div id="innerDiv">' + d.field + '</div>';
Что произойдет, если я сделаю obj1.field = 'newValue'. Как делается ребинд?
Спасибо!