Datamaps给了我一个无法读取属性'albersUsa'的undefined

Tom*_*ird 1 javascript import d3.js angularjs datamaps

我在尝试创建地图时收到此错误:

数据映射错误 我目前正在使用的版本,"datamaps": "^0.5.8",这是直接来自我的package.json.我还检查了package.json实际的包,看看main指向的位置:

Datamaps package.json <code>datamaps.all.js</code>正在加载.</p></p>
    </div>
  </div>

<div class=

alt*_*lus 7

这归功于D3 v4的新模块化,这使得必须压缩命名空间:

但是,采用ES6模块有一个不可避免的后果:D3 4.0中的每个符号现在共享一个平面命名空间而不是D3 3.x中的嵌套命名空间.

对于您的代码,这意味着使用d3-geo模块的某些引用无效,因为它们引用了v4中不再可用的属性:

地理位置(d3-geo)

因为数据映射已经定义了对D3的依赖,所以^3.5.6这将包括D3 v4.但是,由于命名空间中的上述更改,您将不得不使用D3 v3.