假设我将数字列表绑定到“li”元素,使用数字本身作为键。所以,如果我从[1,2]开始,那么我得到:
现在,如果我将该列表更新为[1,3,2],那么我希望HTML看起来像:
我不能为我的生活弄清楚如何做到这一点,因为如果我只是做一个enter()。append('li'),那么输入选择是3,所以HTML看起来像: / p>
(选择也有insert(),但只接受常量值而不是回调。)
答案 0 :(得分:1)
我发现在更新后使用selection.order似乎有效,但它仍然不能完全满足,因为我想在插入时这样做。
答案 1 :(得分:1)
您还需要进行更新:
var container = d3.select("ul");
var selection = container.selectAll("li").data([1, 3, 2]);
// Enter
selection.enter().append("li");
// Update
selection.text(function(d) { return d; });