Я новичок и хочу изучить ReactJS, и я начинаю устанавливать новую пустую папку с помощью команды npx create-react-app .. У меня нпм v.6.4.1. и когда я пытаюсь выполнить команду, она выдает мне ошибку.
Error: EPERM: operation not permitted, mkdir 'C:\Users\LOGIVAR'
TypeError: Cannot read property 'get' of undefined
at errorHandler (C:\Program Files\nodejs\node_modules\npm\lib\utils\error-handler.js:205:18)
at C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js:78:20
at cb (C:\Program Files\nodejs\node_modules\npm\lib\npm.js:228:22)
at C:\Program Files\nodejs\node_modules\npm\lib\npm.js:266:24
at C:\Program Files\nodejs\node_modules\npm\lib\config\core.js:83:7
at Array.forEach (<anonymous>)
at C:\Program Files\nodejs\node_modules\npm\lib\config\core.js:82:13
at f (C:\Program Files\nodejs\node_modules\npm\node_modules\once\once.js:25:25)
at afterExtras (C:\Program Files\nodejs\node_modules\npm\lib\config\core.js:173:20)
at C:\Program Files\nodejs\node_modules\npm\node_modules\mkdirp\index.js:47:53
C:\Program Files\nodejs\node_modules\npm\lib\utils\error-handler.js:205
if (npm.config.get('json')) {
^
TypeError: Cannot read property 'get' of undefined
at process.errorHandler (C:\Program Files\nodejs\node_modules\npm\lib\utils\error-handler.js:205:18)
at process.emit (events.js:182:13)
at process._fatalException (internal/bootstrap/node.js:485:27)
Install for create-react-app@latest failed with code 7
Я уже выполняю ту же команду в пустом проекте Laravel, но все равно выдает ту же ошибку.
Можете ли вы сказать мне, что является основной причиной проблемы и как это исправить?
Обновлено: Я уже запускаю терминал от имени администратора, но получаю другую ошибку:
npm ERR! code ENOLOCAL
npm ERR! Could not install from "2\AppData\Roaming\npm-cache\_npx\10552" as it does not contain a package.json file.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\LOGIVAR TY 2\AppData\Roaming\npm-cache\_logs\2019-01-23T04_18_56_036Z-debug.log
Install for create-react-app@latest failed with code 1





Вы пробовали запустить это от имени администратора?
Попробуйте запустить его от имени администратора, так как ваша операция не разрешена.
Оно работает. Но это дало мне другую ошибку. Я отредактирую его по моему вопросу
Хорошо, хорошо, я должен был это прокомментировать
Попробуйте эту команду: npm install -g create-react-app, я ссылался на нее из этой: github.com/facebook/create-react-app/issues/4058
Спасибо, он должен установиться и работать прямо сейчас
Да, если он проголосует за это, чтобы другие, имеющие ту же проблему, знали, как решить эту проблему.
Обратите внимание, что большую часть времени вы не хотите запускать всевозможные приложения от имени администратора.
добавьте имя проекта, подобное этому, в вашу команду:
npx create-react-app your-project-name
Это проблема с npx. В имени вашего компьютера есть пробел. Я бы рекомендовал npm install -g create-react-app, чтобы обойти проблему с npx.
В моем случае фактическая проблема была связана с наличием пробела в моей папке с именем пользователя Windows. Что также имеет место здесь, если посмотреть на первую строку трассировки стека,
Error: EPERM: operation not permitted, mkdir 'C:\Users\LOGIVAR'
Поскольку нет каталога с именем LOGIVAR, он пытается запустить mkdir, для которого его операция получения не разрешена.
Вот как я это исправил благодаря citoreek, g8up и gijswijs
запустите npm config edit, чтобы отредактировать вашу конфигурацию, это откроет текстовый файл в блокноте или настроенном вами редакторе,
затем измените cache path с
; cache=C:\Users\Gijs van Dam\AppData\Roaming\npm-cache
к
cache=C:\Users\GIJSVA~1\AppData\Roaming\npm-cache
Не забудьте удалить ; в начале,
следующий вопрос: откуда мы знаем, что нужно заменить наше имя пользователя на GIJSVA~1?
Есть несколько способов нацелиться на это,
C:\Users, откройте Power Shell и выполните следующую команду.cmd /c dir /x
что это делает, перечисляет все каталоги в текущем каталоге вместе с их короткими именами, которые не должны содержать пробелов и обычно имеют длину 6 символов или меньше. Скопируйте это короткое имя в свой каталог имен пользователей и используйте его в своем пути к кешу.
Вы заметите, что эти короткие имена существуют только для каталогов, содержащих пробелы или длиннее 6 символов, для остальных каталогов их короткие имена будут такими же, как их имя каталога,
После того, как вы закончите редактирование этого файла, сохраните свои изменения, а затем повторите попытку после закрытия любого активного процесса power shell / bash и повторного открытия их.
Простое обновление cache в конфигурации npm, как упоминалось выше, исправило это для меня. F windows еще раз, никогда не было таких проблем на Mac.
у них действительно должна быть такая информация на начальной странице создания-реакции-приложения.
В моем случае мне нужно было изменить все, что упоминает мое полное имя, с пробелом.
Это была именно проблема. Никогда бы не подумал об этом. Большое спасибо.
Сначала установите приложение create-реагировать
npm install create-react-app
тогда
npx create-react-app app-name
нет, нет необходимости устанавливать приложение create-react-app, если вы используете npx create-react-app
Вышеупомянутая проблема связана с пробелами, содержащимися в имени папки. Лучший способ - внести изменения в файл конфигурации.
Введите npm config edit, чтобы войти в ваш файл конфигурации.
Затем измените
; cache=C:\Users\Sinojia Zeel\AppData\Roaming\npm-cache
к
cache=C:\Users\SINOJI~1\AppData\Roaming\npm-cache
Не забудьте убрать точку с запятой спереди
SINOJI~1 можно заменить именем вашей папки, которое содержит пробелы.
Просто возьмите первые 6 букв имени вашего файла и добавьте к суффиксу ~1 (использование заглавных букв в имени файла необязательно, но часто это делается)
Сохраните файл, выйдите и повторно запустите команду npx create-react-app ..
Первая глобальная установка
npm install -g create-react-app
Создайте новое приложение
npx create-react-app your-app-name
это сработало для меня
будет ли этот метод использовать последнюю версию или версию, установленную глобально?
@sachuverma этот метод устанавливает последнюю версию глобально
Я столкнулся с аналогичной проблемой при создании приложения React от Linkedin, узнав, что у него есть команда -
npx create-react-app my-website --use-npm
для создания нового приложения React, но не упомянул, требуются ли для этого какие-либо предварительные условия.
Итак, чтобы запустить приведенную выше команду, сначала установите приложение create-react-app с
npm install -g create-react-app
Я также получал ту же ошибку:
Error: EPERM: operation not permitted, mkdir 'C:\Users\Username'
command not found: create-react-app
Тогда у меня сработала следующая команда:
npm install -g create-react-appnpx create-react-app project-nameСледующая команда работала для меня:
Если вы все еще сталкиваетесь с этой проблемой, после всего вышеперечисленного -
У меня была такая же проблема с пробелом в моем имени, я пробовал:
И ничего из этого не сработало для меня, но потом я побежал:
... и это наконец сработало. Надеюсь, это поможет кому-то там
Я запускаю его на терминале PhpStorm. Я не уверен, что он запущен от имени администратора.