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

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

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


person byronyasgur    schedule 18.11.2014    source источник


Ответы (2)


Вот, хотя и старая, статья в блоге node 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», чтобы синхронизировать их.

person ckross01    schedule 18.11.2014

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

person Ghidello    schedule 18.11.2014