我正在关注 es6 类教程并制作了一个不错的 d3 小可视化。然后我做了第二个,并认为我应该做一些关于将它们捆绑到库中的事情,所以最初尝试了模块(然后发现浏览器还不支持它们),然后我安装了 webpack 1.13 并使用require()
了(因为虽然它看起来import
应该工作,它没有;直到 2.0 才支持)。
只是,现在不是export default class Foo(data, args)
在我的 bundle.js 中,我有var Foo = function () { function Foo(data, args) ...
.
当我尝试时,解释器只是抱怨Foo.Foo(data, args)
,但我的直觉是,以这种方式假装实例化一个 frankenclass 可能不是 webpack 的意图?是的,我可以将所有模块文件连接到我自己的 bundle.js 中,然后 go new Foo()
,但我正在尝试使用适当的捆绑工具。
我觉得在线文档中 ES6 中的“可能”与您如何在 webpack 中实际实现之间存在相当大的差距。
使用 webpack 捆绑模块的分步方法是什么,以便您可以从 index.js 脚本中的捆绑包中实例化您的类?
附录:(到目前为止我做了什么)
├── bundle.js #supposed to bundle Foo and Bar
├── bundle.js.map
├── index.html #include bundle.js and index.js before </body>
├── index.js #want to be able to new Foo() and Bar()
├── js
| ├── foo.js Foo() lives here
| └── bar.js Bar() lives here
├── LICENSE
├── node_modules
| └── (stuff)
├── package.json
├── README.md
├── test
| └── (stuff)
└── webpack.config.js # builds without errors