我正在像这样在我的React应用程序中导入d3.js库:
import * as d3 from "d3";
我正在创建一个基本的世界地图,该地图也可以在浏览器中正确显示。但是,当我尝试在Chrome控制台中执行以下操作时:
d3.select("path")
我遇到错误:
未捕获的ReferenceError:d3未定义
我想它与React的工作方式有关,并且作为React的新手,我现在不知道我现在在这里缺少什么。有人可以帮忙吗?
答案 0 :(得分:1)
因为webpack(或任何其他废话)将其保存在模块范围内。为防止模块之间发生冲突,捆绑器将其与功能包装在一起。您可以将所有导入视为本地函数变量:
function yourModule(require) {
const d3 = require('d3');
// you can use d3 here within your module
}
you're not able to use it here, somewhere outside