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

时间:2017-02-21 19:23:53

标签: javascript node.js webpack pug

我使用文件加载器自动将一堆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"
            ]
        }

我在根构建目录中得到了一个this-shouldnt-emit包文件,我不想要。

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

1 个答案:

答案 0 :(得分:0)

我不确定你真正在问什么,但是如果你想在一个包中包含多个文件,请使用数组。在[name]中使用filename: '[name].bundle.js的重点是多个条目。对于一个输入键,没有必要(但是可选)。

这将创建两个捆绑文件。

entry: {
   BUNDLE_KEY_ONE: 'path/file.js',
   BUNDLE_KEY_TWO: 'path/otherFile.js',
}

这就是你有多个文件的方法。

entry: {
   SINGLE_BUNDLE_NAME: ['file/one.js', 'file/two.js']
}