【发布时间】: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-core和lib/dust之间的唯一区别(它是在构建过程中添加的) -
谢谢@Interrobang。我犹豫是否直接从 lib 目录添加依赖项,因为我不知道构建过程会做什么。但它似乎工作得很好。如果您将评论添加为答案,我会接受。