我希望将webpack输出代码视为javascript函数体,并使用返回值来公开库。
我已经创建了这个插件(以内部webpack实现为模型,例如SetVarMainTemplatePlugin):
const ConcatSource = require("webpack-sources").ConcatSource;
class returnPlugin {
apply(compiler) {
compiler.plugin("this-compilation", (compilation) => {
const mainTemplate = compilation.mainTemplate;
compilation.templatesPlugin("render-with-entry", (source, chunk, hash) => {
mainTemplate.applyPluginsWaterfall("asset-path", "return", {
hash: hash,
chunk: chunk
});
return new ConcatSource('return ', source);
});
});
}
}
这会生成一个带有return
前缀的输出文件,但是它似乎在最后一次传递失败,并且webpack错误出现了:
错误中的错误:'返回'功能之外(1:0)
我应该使用ConcatSource
以外的其他内容吗?