Как я могу настроить несколько дистрибутивов webpack / babel в одном проекте? - PullRequest
0 голосов
/ 14 февраля 2019

Я хочу иметь один репозиторий, который объединяет разные и независимые исходные коды js в свои собственные каталоги dir src -> dist

Это ужасно.структура, которую я имею в виду

  • код

    • src01
    • src02
    • ....
    • src-n
  • public

    • dist01
    • dist02
    • ....
    • dist-n

Я понял, что могу создать каждый отдельный src, настроив package.json, например:

....
"scripts": {
  .... (one line for each build I want to have tracked?)
  "build-src-n": "webpack --mode production ./code/src-n/index.js --output ./public/dist-n/main.js",
  ...
},
...

, а затемexecuting

npm run build-src-n

Мой webpack.config.js теперь фактически такой

const HtmlWebPackPlugin = require("html-webpack-plugin");
module.exports = {
    module: {
        rules: [
            {
                test: /\.(js|jsx)$/,
                exclude: /node_modules/,
                use: {
                    loader: "babel-loader"
                }
            },
            {
                test: /\.html$/,
                use: [
                    {
                        loader: "html-loader"
                    }
                ]
            }
        ]
    },
    plugins: [
        new HtmlWebPackPlugin({
            template: "./src/index.html",
            filename: "./index.html"
        })
    ]
};

Сборка js работает, как и ожидалось.Но я немного запутался в том, как передавать параметры в сценарии, определенные в packa.json, чтобы

HtmlWebPackPlugin указывал точный index.html, чтобы строка:

  template: "./src/index.html",
  would become "./src-n/index.html

где n - это то, что я мог бы передать в качестве дополнительного параметра в webpack cli

Также мне нужно было бы переместить ./src-n/file.json в ./dist-n/file.json, как мне добитьсячто в конфигурационном файле webpack?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...