Webpack передает аргумент в string-replace-loader

Есть ли способ передать аргумент загрузчику строки-замены?

Я пытаюсь добиться чего-то подобного -

Написать в оболочке - webpack arg1=HelloWorld

в webpack.config.js -

var value = arg1 // get it from the shell

{
    test: /testFile\.js$/,
    loader: 'string-replace-loader',
    options: {
        search: '$',
        replace: value,
    }
}

А также $ в testFile.js стал бы "HellowWorld".

Как я могу получить это?

1 ответ

Вы могли бы использовать argv или же env, давайте предположим, что вы хотели бы достичь чего-то, запустив webpack --env.text=testзатем, выполнив это в своей консоли, вы можете получить доступ к переменной окружения внутри своего кода javascript, так что пока вы находитесь в testFile.js, вы можете просто написать:

console.log(process.env.text); //returns 'test' и отсюда вы можете делать с этим значением все, что захотите, возможно, заменить на него знак $ или, возможно, напрямую распечатать его где-нибудь.

Более подробная информация здесь: https://webpack.js.org/guides/environment-variables/

Другие вопросы по тегам