首页 > 解决方案 > 使用 webpack 时客户端模块无法访问依赖模块

问题描述

我将我的项目迁移到 Webpack。之前的样子:

HTML:

...
<script src="d3.v4.js"></script>
<script src="techan.js"></script>
<script src="main.js"></script>
...

main.js取决于techan.jsd3.v4.jsthechan.js依赖于d3.v4.js

迁移到 webpack 后:

HTML:

<script src="dist/main.js"></script>

main.js

import d3 from './d3.v4.min'
import techan from './techan'
...

现在techan.js不认识了d3。它需要一个名为的全局变量d3并抛出此错误:

Uncaught TypeError: Cannot read property 'min' of undefined

在这一行:

require('./heikinashi')(indicatorMixin, accessor.ohlc, d3.min, d3.max),

我如何在不接触techan.jsd3.v4.js编码的情况下解决这个问题?

标签: javascriptd3.jswebpacktechan.js

解决方案


我改为main.js

window.d3 = require('./d3.v4.min');
window.techan = require('./techan');
...

现在已经修复了!


推荐阅读