npm продолжает устанавливаться по всему миру - PullRequest
0 голосов
/ 06 ноября 2018

Я использую последний npm на Mac. У меня странная проблема: если я хочу установить какой-то пакет локально в папку, я вынужден npm init это сделать. Другими словами, если я просто npm install [package name], он будет установлен глобально (в моей папке / User / npm-modules), и, таким образом, единственный способ установить его локально - это инициировать папку. Так что, в принципе, все должно быть наоборот. Зачем? Есть идеи?

Ответы [ 3 ]

0 голосов
/ 06 ноября 2018

npm init создает файл package.json в каталоге вашего текущего проекта. Пакеты npm будут установлены локально, если вы настроили package.json с помощью команды npm i PACKAGE-NAME.

0 голосов
/ 06 ноября 2018

Я некоторое время не работал с узлом, но в свое время npm использовал поиск папки node_modues, начиная с текущего каталога, и продолжает перемещаться в родительскую папку. Если папка node_modules не найдена, она перейдет в глобальную папку.

Итак, в вашем случае создайте пустую папку node_modules в вашем текущем каталоге и попробуйте npm install [package]

Это должно избежать упомянутой вами СИЛЫ npm init. Тем не менее, более чистое решение всегда использовать npm init.

Идея npm заключалась в том, чтобы разделить разные приложения и их зависимости в одном проекте. Поиск узловых модулей в той же папке помог достичь этого.

0 голосов
/ 06 ноября 2018

Да, если вы хотите установить пакет локально, вам нужно создать файл package.json. Это то, что будет делать npm init, а затем вы можете установить пакеты

...