На мой взгляд, самый простой способ передачи аргументов — использовать Node. Поскольку Webpack получает аргументы, вы можете сохранить аргументы командной строки в специальной переменной среды (которая существует только в рамках сеанса):
// webpack.config.js
process.env.MY_APPLICATION_NAME_ARGS = JSON.stringify(process.argv)
export default {
...
Затем в main.js (в любом месте, где вы хотите их проанализировать) вы извлекаете аргументы командной строки из выделенной переменной среды.
// main.js
const myArgs = JSON.parse(env.MY_APPLICATION_NAME_ARGS )
Поскольку вы будете получать все аргументы, которые вы передали Webpack, используя это, вы сможете безболезненно использовать любые модули узла (например, yargs) для их анализа (или, конечно, делать это вручную).
Таким образом, вы сможете делать такие вещи без каких-либо проблем:
webpack ... --opt1 the_value --custom1 something
yarn run dev --opt1 the_value --custom1 something
и т. д.
person
Patrice Thimothee
schedule
12.12.2020