Эта команда отлично работает:
json -I -f ./src/environments/build.json -e 'this.patch++'
Я пытаюсь создать пользовательскую команду NPM сборки в моем файле package.json, который запускает эту команду до фактической сборки, но сначала я просто попытался запустить команду json, просто чтобы посмотреть, работает ли она, но это не так: /
package.json
{
...
"scripts": {
...
"svrge-build-dev": "json -I -f ./src/environments/build.json -e 'this.patch++'",
...
}
то я получаю этот вывод (который точно такой же, как когда я запускаю код JSON сам по себе), что означает, что команда определенно выполняется
> [email protected] svrge-build-dev D:\repos\test\web-client
> json -I -f ./src/environments/build.json -e 'this.patch++
json: updated "./src/environments/build.json" in-place //<- this is exactly the same'
Однако файл build.json не обновляется.
Ошибок в терминале нет
есть идеи, как заставить его работать? Кажется, я ничего не могу найти по этому поводу.
Буду признателен за любую помощь, часами чесал голову
Том
работает ..... серьезно. В чем причина этого? я получил код из их документации в одинарных кавычках. Если вы поставите это как ответ, я приму это





Повторяю то, что я сказал в комментарии: попробуйте заменить одинарные кавычки двойными:
{
// ...
"scripts": {
// ...
"svrge-build-dev": "json -I -f ./src/environments/build.json -e \"this.patch++\"",
// ...
}
Эту мысль вызвала такая строка в выходных данных:
> json -I -f ./src/environments/build.json -e 'this.patch++
После некоторого покопания я думаю, что это зависит от ОС и / или интерпретатора командной строки. Он показывает команду, которая была запущена, но не с завершающей одинарной кавычкой.
После некоторого поиска выяснилось, что это действительно ошибка: см. Эта проблема и Эта проблема. Возможно, вы захотите предупредить разработчиков об этом: последняя проблема, с которой я связался, создает впечатление, что это проблема Windows.
Что произойдет, если вы замените одинарные кавычки на экранированные двойные кавычки, например
json -I -f ./src/environments/build.json -e \"this.patch++\""?