Webpacking UMD模块

时间:2016-07-18 22:28:56

标签: webpack umd

我是webpack新手,所以如果我正在尝试使用Webpack来做一些不适合的事情,我会提前道歉。

我正在使用webpack发布我的第一个库。我在我的项目和节点(或commonjs)环境中有大量的UMD模块我希望保留目录结构,而在浏览器环境中我想将所有模块捆绑在一起。我的问题是如何实现这一目标。当我在我的输入文件中有这样的东西时 -

(function(root, factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD. Register as an anonymous module.
        define(['metaAnalytics'], factory);
    } else if (typeof module === 'object' && module.exports) {
        // Node. Does not work with strict CommonJS, but
        // only CommonJS-like environments that support module.exports,
        // like Node.
        module.exports = factory(require('./AnalyticsNode.js'));
    } else {
        // Browser globals (root is window)
        root.metaAnalytics = factory(require('./AnalyticsBrowser.js'));
    }
}(this, function(DAClient) {
    //do something with DAClient
}));

我通过webpack传递上述文件,它没有将依赖项中的代码引入输出文件。如何让webpack自动将AnalyticsBrowser.js及其所有依赖项打包到一个包中?这可能吗?

注意 - 我删除了UMD包装器并用简单的require语句替换它们,webpack能够将代码编译到输出中。所以我的问题是为什么它无法将UMD模块的依赖项编译到输出文件中。

0 个答案:

没有答案