Как предоставить значение параметра по умолчанию для скрипта npm? - PullRequest
0 голосов
/ 06 октября 2018

У меня есть это в моем package.json файле:

scripts: { 
  "echo": "echo ${1-'/*'}"
}

Затем, когда я запускаю npm run echo, я получаю /*, что я хочу (Он обозначает все пути от корня. Этопо умолчанию.)

Но когда я запускаю npm run echo /salad, я получаю /* /salad, что не помогает.Кажется, он использует значение по умолчанию, добавляет пробел, а затем добавляет параметр.

Как получить только /salad, когда я предоставляю параметр, и /*, когда я не предоставляю параметр?

1 Ответ

0 голосов
/ 06 октября 2018
Аргументы сценария

npm просто добавляются в конец, поэтому они не будут правильно разрешать числовые переменные, такие как $1.

Чтобы разрешить такие переменные, вы можете заключить сценарий в функцию оболочки и затем выполнитьфункция.Попробуйте это:

scripts: { 
  "echo": "run(){ echo ${1-'/*'}; }; run"
}

В качестве альтернативы, просто используйте именованные переменные в вашем скрипте вместо числовых.

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