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/