nyc не распознается как команда после установки

Я очень новичок в node.js, npm и JavaScript, но для покрытия кода пытаюсь использовать инструмент Istanbul и, следовательно, установил nyc с npm i nyc со ссылкой на https://www.npmjs.com/package/nyc, который выводит как

C:\Users\user>npm i nyc
npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\user\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\user\package.json'
npm WARN user No description
npm WARN user No repository field.
npm WARN user No README data
npm WARN user No license field.

+ [email protected]
updated 1 package in 1.334s

9 packages are looking for funding
  run `npm fund` for details

Но когда я нажимаю nyc o в командной строке, он говорит: nyc не распознается как внутренняя или внешняя команда.

Согласно документу, я добавил зависимость от разработчиков со следующей, но с той же ошибкой.

C:\Users\user>npm i -D nyc
npm WARN saveError ENOENT: no such file or directory, open 'C:\Users\user\package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\user\package.json'
npm WARN user No description
npm WARN user No repository field.
npm WARN user No README data
npm WARN user No license field.

+ [email protected]
added 142 packages from 99 contributors in 48.325s

9 packages are looking for funding
  run `npm fund` for details

Пожалуйста, помогите мне, что здесь не так.


person Alpha    schedule 28.08.2020    source источник
comment
есть ли файл package.json в папке `C:\Users\user`?   -  person Thanh Nguyen Van    schedule 28.08.2020
comment
Нет, это не так. не могу понять откуда взять и какой должен быть контент   -  person Alpha    schedule 28.08.2020


Ответы (2)


Перейдите в корневую папку вашего проекта.
Запустите npm init, это создаст файл package.json.
Затем запустите npm i nyc.

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

npm install --save-dev nyc
person Subham Rajput    schedule 28.08.2020
comment
Я сделал npm init -y, а затем npm i nyc, но все равно для nyc в командной строке выдает ту же ошибку. - person Alpha; 31.08.2020
comment
Мы установили nyc как devDependency. Вы должны написать свою команду, т.е. nyc, в разделе сценариев package.json и запустить ее с помощью команды npm run <script-name>. Подробную информацию можно найти по этой ссылке. - person Subham Rajput; 01.09.2020

Я была такая же проблема. В моем случае это произошло потому, что у меня был пробел в имени пользователя Windows. Это было имя фамилия.

У меня есть два решения для этого.

  1. Вы можете установить wsl и Ubuntu LTE из магазина win, а затем добавить расширения к визуальному коду, чтобы вы могли запускать терминал Linux. При наведении курсора потребуется установить узел для Linux и все остальное.
  2. Вы можете создать нового пользователя Windows и использовать VS Code в режиме «запуск от имени». (Shift и правый клик). Если у вас не установлен код VS для всех пользователей, вам нужно будет добавить доступ для этого вновь созданного пользователя.

Я выбрал второе решение, и оно сработало для меня.

person user2470967    schedule 26.01.2021