Webpack和dust-core.js不兼容

时间:2015-07-06 20:14:43

标签: webpack dust.js

我正在研究webpack loader for dust.js。只要我通过require('dustjs-linkedin)需要整个dustjs npm模块,它就能很好地工作。但是,我想只需要核心(dist/dust-core),因为加载器本身会编译模板。

问题似乎是webpack看到以下内容:

if (typeof define === "function" && define.amd && define.amd.dust === true) {
  define(["require", "dust.core"], function(require, dust) {
    dust.onLoad = function(name, cb) {
        require([name], function() {
            cb();
        });
    };
    return dust;
  });
}

并自动开启code-splitting。具体来说,require([name], ...)调用导致webpack尝试打包dist文件夹中的所有文件。我可以使用插件完全关闭代码分割,但这会使我的加载器变得不那么有用。

是否有人使用webpack需要dust.js并遇到类似的问题?有人解决了这个问题吗?我正在考虑尝试提供一个生成dust-core.js的webpack友好版本的修复程序。

1 个答案:

答案 0 :(得分:3)

您应该可以在构建中直接使用lib/dust

当Dust内置到dist时,对dust.onLoad的AMD加载器支持是作为构建过程的一部分添加的,但是你不需要那段代码,它就是给你的代码上面的麻烦。