Webpack - 不要为某个入口点输出一个包

Mat*_*nov 8 javascript node.js webpack pug-loader

我使用文件加载器自动渲染一堆pug模板到静态html文件,但webpack也输出一个基于入口点的无意义文件

例如,这是在我的webpack.config.js中:

entry: {
    'js/build/bundle.js': './js/app.js',
    'this-shouldnt-emit': './pug/.pug.js' //pug entry point
},

output: {
    path: path.join(__dirname, '../'),
    filename: '[name]'
},

...
// pug loading module rule
        {
            test: /\.pug$/,
            include: path.resolve(__dirname, "../pug"),
            use: [
                "file-loader?name=[path][name].html&context=./pug",
                "pug-html-loader?pretty&exports=false"
            ]
        }
Run Code Online (Sandbox Code Playgroud)

this-shouldnt-emit在根构建目录中得到一个捆绑文件,我不想要.

如何阻止文件加载器发出输出包,但不干扰它生成当前所有的静态html文件.是否有一个插件或某种类型的null加载器,我可以放在加载器链的末尾来杀死束发射?

Mic*_*uce 1

我不确定您真正要问的是什么,但如果您希望它在一个包中包含多个文件,请使用数组。[name]使用in的全部目的filename: '[name].bundle.js是用于多个条目。一个输入键不是必需的(但可选)。

这将创建两个捆绑文件。

entry: {
   BUNDLE_KEY_ONE: 'path/file.js',
   BUNDLE_KEY_TWO: 'path/otherFile.js',
}
Run Code Online (Sandbox Code Playgroud)

这就是您将多个文件捆绑在一起的方式。

entry: {
   SINGLE_BUNDLE_NAME: ['file/one.js', 'file/two.js']
}
Run Code Online (Sandbox Code Playgroud)