使用WebPack中的js文件跳过条目

时间:2018-10-31 02:33:49

标签: javascript webpack web-frontend

我必须对我的项目之一使用Webpack才能为js,css和其他静态资产构建前端包。它做得很好,但是在项目的早期阶段,我只有一些CSS和静态图像,还没有js文件。这是我的完整webpack.config.js

const Webpack = require("webpack");
const Glob = require("glob");
const path = require("path");
const CopyWebpackPlugin = require("copy-webpack-plugin");

const configurator = {
    entries: function(){
        var entries = {
            application: [
                './assets/dummy.js',
            ],
        }

        return entries
    },

    plugins() {
        var plugins = [
            new CopyWebpackPlugin([{from: "./assets",to: ""}], {copyUnmodified: true,ignore: ["css/**", "js/**", "**.js"] }),
        ];

        return plugins
    },

    moduleOptions: function() {
        return {
            rules: [

            ]
        }
    },

    buildConfig: function(){
        const env = process.env.NODE_ENV || "development";

        var config = {
            mode: env,
            entry: configurator.entries(),
            output: {filename: "[name].[hash].js", path: `${__dirname}/public/assets`},
            plugins: configurator.plugins(),
            module: configurator.moduleOptions()
        }

       return config
    }
}

module.exports = configurator.buildConfig()

实际上,它对我的​​作用是将资产复制到公共目录。我还没有任何JavaScript,但将来会使用。因此,我尝试注释entry,并将其设置为null或空字符串,但没有运气。似乎Webpack需要如此严重地处理js文件。我当前的解决方案是创建一个空的dummy.js文件并将其提供给Webpack。恼人的是,尽管我的源js文件完全为空,它还是用一些样板js代码生成了3.3kb application.afff4a3748b8d5d33a3a.js文件。

我知道这是Webpack的一个用例,Webpack最初是为处理javascript而创建的,但是我敢打赌,很多人仍然将其不仅用于捆绑javascript。因此,我的问题是,有没有一种更好,更优雅的方法来跳过Webpack中的捆绑js文件?

p.s。

我认为,我在这里How to make WebPack copy a library instead of bundling?

找到了一个没有答案的相关问题

p.s.#2

建议的重复问题包含无效的Webpack配置Invalid configuration object.,因此可以接受答案,因此,我不能用它来解决问题。 而且,答案是

  

webpack将创建一个虚拟javascript文件

我专门问如何避免创建不必要的文件。

0 个答案:

没有答案