将命令行参数传递给webpack.config.js

我有一个简单的webpack.config.js

module.exports = {
  entry: "./app.js",
  output: {
    filename: "bundle.js"
  },
}

我想通过值entryoutput通过命令行参数。那有可能吗,我该怎么做?

逆天米亚2020/03/24 19:18:10

您可以使用argv包并设置变量。您必须先这样做module.export

村村村村2020/03/24 19:18:10

webpack.config.js也可以导出env函数,该函数可以返回conf对象。因此,您可以使用如下所示的webpack配置:

module.exports = env => {
    return {
        entry: env === "production" ? "./app.js": "app-dev.js",
        output: {
          filename: "bundle.js"
        },
    }
};

然后从命令行(或package.json)调用webpack,如下所示:

webpack --env=production