ruby-on-rails - ReferenceError:找不到变量:在带有 webpacker 的新 rails6 应用程序中的 d3
问题描述
我正在使用 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
来做到这一点。您可以在导入后将变量分配给全局范围,即窗口:
// app/javascript/packs/application.js
import * as d3 from "d3"
window.d3 = d3
推荐阅读
- cordova - cordova-sms-plugin 未请求许可
- c++ - 如何为 libavcodec 预先分配内存以写入解码的帧数据?
- java - 输出超大二维数组
- ios - 有没有办法获取运行您的应用程序的 iOS 设备的堆栈跟踪?
- php - 如何通过 curl 在 Codeigniter 中使用 Mailgun API 中的附件
- windows - 包含 winuser.h 时出错。它将 ChangeMenu 定义为 ChangeMenuW 或 ChangeMenuA
- reactjs - 实施 Google OAuth 后 CoreUI React 仪表板路由不起作用
- apache-nifi - 是否有可能在 http 响应中返回错误消息(HandleHttpResponse 处理器)
- python - 如何将opencv安装到多个python环境中?
- reactjs - JSX 元素类型 'ReactElement
| null' 不是 JSX 元素的构造函数