node_modules в нескольких каталогах за пределами любой папки проекта - PullRequest
0 голосов
/ 05 марта 2019

Я прочитал много статей о StackOverflow, чтобы понять node_modules, Ни у кого из них не было такой же «проблемы», как у меня. Это не большая проблема, так как узел все еще работает нормально и все. Но дело в том, что мне не нравится ненужные файлы или плохая файловая структура.

Я использую macOS, кстати.

Я понимаю, что когда вы устанавливаете модули узлов глобально, они попадают в этот путь к файлу:

/ USR / местные / Библиотека / node_modules

но я также нашел другие node_modules внутри этого пути:

~ / node_modules

Могу ли я просто удалить этот node_modules? изм

^ Это основной вопрос, который я задаю, могу ли я удалить node_modules, которые не находятся ни внутри usr / local / lib / .., ни внутри какой-либо папки проекта.

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

Так какой смысл в том, чтобы node_modules устанавливались глобально?

Могу ли я удалить оба пути и установить node_modules только внутри папок моего проекта? Будет ли это более полезным?

Я также заметил, что когда я перемещал папки моего проекта, которые содержали node_modules, на другой диск. размер файла этой папки увеличился с абсурдными числами. Это как-то связано с глобальной установкой node_modules?

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

Когда я перенес файлы своего проекта с Диска1 на Диск2, я не смог переместить какой-либо файл проекта обратно на Диск1, так как размер файла в этой папке значительно увеличился. Я говорю о переносе 12 проектов с Disk1 на Disk2, но каждая папка проекта стала в 2 раза больше, если объединить эти 12 папок проекта. Disk1 имел 250 ГБ пространства. Disk2 имел 1 ТБ места. Перемещение этих папок проекта заполнило мой Disk2 на 80% пространства, я сошел с ума, когда увидел, что это произошло. У кого-нибудь есть объяснение этому случаю?

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

Локальное управление пакетами всегда полезно для вашего проекта, хотя node_module, являющийся большим файлом всех зависимостей, иногда не может быть импортирован локально и работает нормально, так как он импортирован глобально. Импортирование локально делает вашу структуру проекта эффективной, и пользователи могут просматривать дополнительныесторонние пакеты, которые вы импортировали.и, как сказал @noobius, вы можете игнорировать его при загрузке файла в git, так как он будет восстановлен при запуске npm install с использованием информации, содержащейся в файле package.json.Upvote, если это поможет

0 голосов
/ 05 марта 2019

Локальная установка пакета npm поместит node_modules в это локальное расположение. Пакеты глобальных узлов - это обычно пакеты, которые вы хотите использовать глобально в нескольких проектах, или они содержат команды CLI (это пакеты, предоставляющие интерфейс командной строки).

Вы должны управлять своими пакетами локально для вашего проекта через файл package.json, а глобальные пакеты - через npm (используйте npm install, uninstall etc ...). Когда вы перемещаете проект или фиксируете его в git, игнорируйте папку node_modules (вы можете в любое время удалить локальную папку node_modules), так как она будет восстановлена ​​при запуске npm install с использованием информации, содержащейся в файле package.json.

...