2014-11-24 2 views
2

Может кто-нибудь посоветовать, что я делаю неправильно здесь (я новичок в хрюкать) а Colleage поставила меня с установкой базовой gruntfileGRUNT - установить пакеты Grunt?

enter image description here

я установил узел, JS, и хрюкать, но я не можете определить, как установить различные пакеты (uglify, concat и т. д.) - какую команду я должен использовать для этого?

ответ

4

Первый вопрос, который вы должны задать себе: «Каковы имена зависимостей хрюка?»

Быстрый ответ:

Просто выполнить npm install <package-name> для каждого пакета, который вы хотите установить. По большей части, я считаю, что имена пакетов эквивалентны их имени github. (grunt-contrib-concat например.)

npm install grunt-contrib-concat будет устанавливать его, а затем перейти к следующему.

Улучшения ремонтопригодность:

Для оптимальной ремонтопригодности и кросс разработчика/среды поддержки вы должны рассмотреть возможность использования package.json в список ваших зависимостей.

Как только у вас есть все ваши зависимости, перечисленные в package.json, вы можете запустить npm install, и все они будут установлены в случае необходимости. (Для развития на основе зависимостей против управления зависимостями выполнения/производства на основе, читайте дальше!)

Лучшие практики:

Оптимальный рабочий процесс с узлом JS является использование npm init первым, так что ваш файл package.json является созданный для вас. то после того, как у вас будет пакет package.json, вы можете установить каждую из ваших зависимостей/devDependencies, добавив их в свои соответствующие списки в json-файле или добавив их в свои соответствующие списки на лету, используя npm install <package name> --save или --save dev уважительно.

ПРИМЕЧАНИЕ: Если вы экспериментируете, и вы предпочтете НЕ сохранить модуль узла в списке зависимостей, тогда сделает простой npm install <package name>.

На данный момент я рекомендую найти npm package.json best practices - так как вы найдете ценную информацию о вашем рабочем процессе для nodejs. Управление зависимостями может быть потрясающим, но только если вы знаете, как реально воспользоваться предоставленными коммунальными услугами.

Рассмотрите следующую выдержку из упаковки.JSON файл:

"dependencies": { 
    "backbone": "*", 
    "underscore": "~*", 
    "requirejs": "*" 
    "jquery": "*" 
    }, 
    "devDependencies": { 
    "grunt": "*", 
    "grunt-contrib-uglify": "*", 
    "grunt-contrib-concat": "*", 
    "grunt-contrib-copy": "*" 
    }, 

пример мы видим, что НПЕ пакеты под зависимостями будут установлены при запуске npm install --production, пакеты разработки будут установлены автоматически при запуске npm install --development,

Примечания: Вы можете изменить свой а также изменяет использование простого npm install без флагов.

По большей части, хрюкать используется для развития, поэтому я считаю, что было бы более часто, чтобы найти все, что связано с ворчанием, находясь в devDependencies

Образец package.json:

http://browsenpm.org/package.json

1

если вы package.json с devDependencies (или зависимостей), определенных, все, что вам нужно запустить, npm install затем grunt

Иначе запустить что-то вроде этого, чтобы установить и сохранить их в package.json

npm install --save-dev <package-name>

+0

Просто обратите внимание, что если 'Gruntfile.js' не содержит задачи' default', вам нужно будет указать, какую задачу вы хотите запустить при выполнении команды 'grunt'. Если файл не содержит задание 'default', IMHO, вероятно, лучше добавить его. – cbillowes

0

самое главное заклинание их правильно, то выполнить НПМ установки .eg: -

npm install grunt-angular-templates 

После этого самая важная часть закрепите их в файле package.json с целью поддержки и перекрестного разработчика/среды, это установит все ваши зависимости просто с помощью простой команды npm install.

Затем установите зависимости с помощью этой команды (--save-dev для devDependencies)

npm install grunt-angular-templates --save or --save dev 

Для создания package.json файла необходимо запустить команду:

npm init 

Пример package.json файла:

{ 
    "name": "XYZ", 
    "version": "1.1.0", 
    "description": "See Doc web application for doctors", 
    "repository": { 
    "type": "git", 
    "url": "https://github.com/XYZ/app.git" 
    }, 
    "license": "XYZ", 
    "author": "XYZ Team", 
    "readmeFilename": "README.md", 
    "devDependencies": { 
    "grunt": "~0.4.1", 
    "grunt-cache-busting": "~0.0.11", 
    "grunt-contrib-clean": "~0.4.1" 
    } 
} 

Поскольку grunt используется для разработки, таким образом, все зависимости должны быть в devDependencies, пакеты разработки будут установлены автоматически при запуске npm install.

Смежные вопросы