загрузка expo-cli, но не может быть использована - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь запустить свой первый проект React Native (https://facebook.github.io/react-native/docs/getting-started.html).). Первая команда, которую он должен выполнить на этой странице, это

npm install -g expo-cli

, которая выдает следующее сообщение об ошибке.

npm WARN checkPermissions Missing write access to /Users/~/.npm-packages/lib/node_modules/expo-cli/node_modules/ansi-escapes
.
.
.
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/Users/~/.npm-packages/lib/node_modules/expo-cli/node_modules/ansi-escapes'
npm ERR! If you believe this might be a permissions issue, please double-check the permissions of the file and its containing directories, or try running the command again as root/Administrator (though this is not recommended).

Итак, я использовал команду sudo:

 sudo npm install -g expo-cli

Эта команда успешно прошла, выдав несколько предупреждений (т. Е. Пропустив необязательные зависимости):

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: @expo/ngrok-bin-freebsd-ia32@2.2.8 (node_modules/expo-cli/node_modules/@expo/ngrok-bin-freebsd-ia32):
.
.
.
+ expo-cli@2.7.0
updated 2 packages in 13.452s

Затем в качествеНа странице React Native указывается, что я запускаю эту команду для использования expo:

expo init

Вот результат:

zsh: command not found: expo

Я пытался сделать то же самое с «expo start» и провел болееДва часа на изучение этой проблемы, но безрезультатно. Большое спасибо.

~ представляет имя пользователя

1 Ответ

0 голосов
/ 02 февраля 2019

После нескольких часов исследований и экспериментов я нашел решение:

  1. полностью удалить узел и npm: https://stackoverflow.com/a/11178106/9687684
  2. загрузить nvm https://github.com/creationix/nvmи заставить его работать.Мне пришлось создать файл (команда linux: touch ~ / .bash_profile), добавить следующие строки кода в исходный файл:

     export NVM_DIR="~/.nvm"
    source ~/.nvm/nvm.sh
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm               
    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  #This loads nvm bash_completion                                                             
    
  3. Запустить эти команды linux.Раньше я делал sudo npm install -g expo-cli, который устанавливал expo-cli, но я не мог использовать команду expo-cli / expo:

    nvm install node
    nvm use --delete-prefix v11.9.0
    npm install -g expo-cli
    

= D

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