Как передать переменную env в rollup.config.js через npm cli? - PullRequest
0 голосов
/ 11 октября 2019

У меня есть папка scripts, в которой много отдельных скриптов внутри отдельной папки, я хотел бы создать каждый отдельно, передавая имя скрипта в качестве параметра.

Я установил накопительный пакет в package.json как "watch": "rollup --watch --config rollup.config.js"

Я хотел бы передать параметр из cli, например npm run watch script_name=abc_script

. Он может быть доступен в rollup.config.js через process.argv

Но, получая эту ошибку

rollup v1.23.1 bundles abc_script → dist/bundle.js [!] Error: Could not resolve entry module

Все выглядит нормально без параметра npm cli.

В накопительном пакете есть переменная --environment, но его использование немного длиннее npm run watch -- --environment script:script_name

IsЕсть ли способ сократить это?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 11 октября 2019

Вы можете передать аргументы, которые будут перехвачены process.argv следующим образом

npm run watch -- some_arg

В вашей программе вы получите массив в process.argv, в котором последнее значение будет значением, переданным впрограмма.

0 голосов
/ 12 октября 2019

npm run watch -- --environment script=script_name работал для меня, поэтому я могу получить доступ к script_name через process.env в конфигурации накопительного пакета

...