Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 代码不';从v3升级到v5时无法工作_Javascript_D3.js - Fatal编程技术网

Javascript 代码不';从v3升级到v5时无法工作

Javascript 代码不';从v3升级到v5时无法工作,javascript,d3.js,Javascript,D3.js,当我将d3.js从v3.5升级到5.9.2(实际上是最新版本)时,我的图形显示正确,但图例项不显示。在我的代码中,存在数据,但我只有,没有内部数据。我不知道下面的代码对于v5是否正确。谢谢你的帮助 d3.select(".segLegend") .insert("div", ".chart") .attr("class", "legend") .selectAll("div") .data(names) .sort() .enter() .append("div")

当我将d3.js从v3.5升级到5.9.2(实际上是最新版本)时,我的图形显示正确,但图例项不显示。在我的代码中,存在
数据
,但我只有
,没有内部
数据
。我不知道下面的代码对于v5是否正确。谢谢你的帮助

d3.select(".segLegend")
  .insert("div", ".chart")
  .attr("class", "legend")
  .selectAll("div")
  .data(names)
  .sort()
  .enter()
  .append("div")
  .attr("data-id", function(id) {
  return id;
})
  .each(function(id) {
  d3.select(this)
    .append("span")
    .style(
    "background-color",
    $scope.openGraphModal.chart.color(id)
  );
  d3.select(this)
    .append("span")
    .html(id);
  if (id !== findSupplier.commodity.supplier.name) {
    $(this).toggleClass('c3-legend-item-hidden');
  }
})
具有V3的DOM 具有V5的DOM

首先快速查看,这是一个奇怪的问题,很难识别,因为在D3代码中,我们没有在您使用的位置使用
排序方法:在该位置,排序
毫无价值。看一看(使用v3):

const data=[1,3,5,4,2];
常量divs=d3。选择(“主体”)
.selectAll(空)
.数据(数据)
.sort()
.输入()
.附加(“div”)
.html(数字)

在浏览了这些代码之后,我觉得v5与v3的工作方式没有什么不同。你确定这可以在v3上正常工作吗?我添加了两个截图来比较v3和v5。那么,其他的一切都是一样的吗?D3版本是唯一的区别吗?当我删除
.sort()
时,它工作正常。