【发布时间】:2018-11-07 20:22:23
【问题描述】:
我在 React 中使用 D3 v5,并且有一个使用 v3 的可视化。我正在为 v5 使用 npm 模块,但对于 v3,我正在尝试导入 D3 以用于该可视化。
在我的组件中我有:
import * as d3 from './lib/d3/v3/d3';
在 d3 文件夹的 d3.js 中,缩小的 v3 d3 脚本:
const d3 = !function(){function n(n){return n&&(n.ownerDocument||n....
export default d3;
但我收到以下错误:
编译失败。
./src/components/d3/NetworkTopology/D3_NetworkTopology.js
Attempted import error: 'behavior' is not exported from './lib/d3/v3/d3' (imported as 'd3').
NetworkTopology.js:
...
const zoom = d3.behavior
.zoom()
“行为”在 v4 中被删除,所以对我来说,这看起来像是在拉 D3 V5 版本而不是 V3。如何设置它以使用 D3 的两个版本?
我将导入更改为:
import d3 from './lib/d3/v3/d3';
但是得到了这些编译错误: 编译失败。
./src/components/d3/NetworkTopology/lib/d3/v3/d3.js
Line 1: Expected an assignment or function call and instead saw an expression no-unused-expressions
我得到与原始 import * as d3 from './lib/d3/v3/d3'; 相同的错误,并在 d3.js 中删除 const 和导出(只需使用原始缩小文件)。
【问题讨论】:
-
我不确定a question I asked earlier 是否有帮助。尽量不要导出 d3 并直接使用它,因为它似乎是所有 d3 组件的全局变量。
-
@jrook,我试过了,但得到了一堆编译错误(最后更新了问题。)
标签: javascript reactjs d3.js ecmascript-6