установленные пакеты npm недоступны

Я установил nodejs с инструкциями из этого поста в Ubuntu 13.1. Все прошло гладко. После этого я установил express , введя команду

npm install express

, что привело к

express@3.4.4 node_modules/express
├── methods@0.1.0
├── range-parser@0.0.4
├── cookie-signature@1.0.1
├── fresh@0.2.0
├── debug@0.7.4
├── buffer-crc32@0.2.1
├── cookie@0.1.0
├── mkdirp@0.3.5
├── commander@1.3.2 (keypress@0.1.0)
├── send@0.1.4 (mime@1.2.11)
└── connect@2.11.0 (methods@0.0.1, uid2@0.0.3, pause@0.0.1, raw-body@0.0.3, qs@0.6.5, bytes@0.2.1, negotiator@0.3.0, multiparty@2.2.0)

, но когда я сейчас набрал что-то вроде

express demo

Я получаю

Программа «Экспресс» в настоящее время не установлена. Вы можете установить его, набрав: sudo apt-get install node-express

1
задан 13 April 2017 в 15:24

1 ответ

Я отвечаю на свой вопрос для случая, когда кто-то другой спотыкается из-за той же проблемы.

Пакеты могут быть установлены как local и global, где local является значением по умолчанию. Мы должны установить пакет как local, когда он нам нужен, и как global, когда мы хотим получить к нему доступ в оболочке. Чтобы установить пакет как глобальный, просто добавьте -g, в моем случае я запускаю

sudo npm install -g express

и теперь он работает.

Редактировать

Использование -g и потребовать его позже может привести к UNMET DEPENDENCY express, это можно решить с помощью -d

sudo npm install -d express
0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: