ReferenceError: Can't find variable: d3 in new rails6 application with webpacker

ReferenceError: Can't find variable: d3 in new rails6 application with webpacker

我正在使用 rails 6 和 d3js 进行个人项目。事实上试图准备配置开始:-)

我使用 yarn add d3js@4.13.0 -T 安装 d3js 并附加行

import * as d3 from "d3";

给我的 javascript/packs/application.js

我的问题是我无法在控制台中访问 d3。 Webpacker 还不是我的舒适区!

默认情况下,Webpack 不会将任何内容导出到全局范围。您在 Webpack 包中导入的任何内容都在您正在使用的文件所代表的模块的本地范围内。

要使变量在全局范围内可用,您必须以某种方式公开它。您可以配置类似 expose-loader 的内容来执行此操作。您可以改为将变量分配给全局范围,即 window,在导入它之后:

// app/javascript/packs/application.js
import * as d3 from "d3"
window.d3 = d3