This jsfiddle生成一个表,并为变量分配该表上trs的选择器。它在enter()上附加一个新的tr。
var trs = table.append('tbody')
.selectAll('tr');
trs.data([]).enter()
.append('tr')
然后设置超时并将数据添加到表中。
setTimeout(function() {
trs.data(movies);
}, 1000);
但是,超时完成后没有任何变化。实际上,trs .__ data__是未定义的。
为什么不调用trs.data()会导致任何更改?
答案 0 :(得分:0)
我已经知道这个问题的答案:我必须在setTimeout回调中重新创建选择器和.enter()。append()调用。