【问题标题】:Webpack and dust-core.js incompatibleWebpack 和dust-core.js 不兼容
【发布时间】:2015-09-24 03:04:07
【问题描述】:

我正在处理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 友好版本。

【问题讨论】:

  • 你可以直接使用lib/dust吗?您上面引用的代码块是dist/dust-corelib/dust 之间的唯一区别(它是在构建过程中添加的)
  • 谢谢@Interrobang。我犹豫是否直接从 lib 目录添加依赖项,因为我不知道构建过程会做什么。但它似乎工作得很好。如果您将评论添加为答案,我会接受。

标签: webpack dust.js


【解决方案1】:

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

当 Dust 内置到 dist 中时,dust.onLoad 的 AMD 加载程序支持将作为构建过程的一部分添加,但您不需要那段代码,而正是上面的代码给您带来了麻烦。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-12
    • 1970-01-01
    • 1970-01-01
    • 2016-02-14
    • 2020-01-17
    • 2020-11-15
    • 2023-03-24
    • 2011-05-24
    相关资源
    最近更新 更多