Может / должен глотать livereload быть установленным глобально

Я новичок в Node и пока не до конца понимаю, что именно означает локальная установка. Я знаю, что мне нужно установить gulp как глобально, так и локально, но в моем случае у меня есть несколько проектов в отдельных папках в папке разработки, и мне интересно, действительно ли мне нужно установить расширение livereload локально в каждой отдельной папке проекта (что это то, что документация предлагает) не будет ли проще установить его глобально; или локально в основной папке разработки. Может кто-нибудь объяснить, как это работает и какие варианты я бы выбрал.

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

2 ответа

Решение

Вот старая, старая статья в блоге узла js, которая идет локально и глобально. http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation

Основы в том, что если вы хотите требовать require('gulp-livereload') внутри вашего кода это должна быть локальная (dev) зависимость. Если вы хотите взаимодействовать с модулем через cli, установите глобально. Например, вы можете установить gulp и nodemon глобально.

Смысл локальной установки заключается в том, что кто-то может закрыть ваш проект, набрать 'npm install' и получить все зависимости, локальные для этого приложения.

Чтобы ответить на ваш вопрос, установите gulp-livereload локально. Но другие модули, такие как gulp, nodemon и т. Д. У вас будут как глобальные, так и локальные.

В качестве дополнительной помощи, если вы хотите установить gulp в качестве зависимости проекта, но при этом иметь его глобально, вы можете запустить 'npm link gulp', чтобы синхронизировать их.

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

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