Еще одна очень полезная статья про npm.
Эта статья предназначена для тех, кто не очень дружит с Node.js, но хочет использовать приложения вроде Grunt, Gulp и тому подобные. Процесс работы с этими приложениями подразумевает редактирование файла package.json и использование команд npm, так что понимание принципов работы npm поможет вам справиться с трудностями.
Понимание того, что такое Node.js поможет вам лучше разобраться с npm. В двух словах — Node.js это интерпретатор языка JavaScript. Сам по себе Node.js являетсяC++ приложением, которое получает на входе JavaScript-код и выполняет его.
Давайте создадим простую программу. Создайте файл helloworld.js и поместите в него следующий код:
Теперь откройте терминал, зайдите в папку с вашей программой и выполните командуJavaScript-кодом . Убедитесь, что у вас установлен Node.js. Результат выполнения программы будет выглядеть примерно так:
Программа просто выведет строку «Hello World» в терминал.
Вкратце, пакетом в Node.js называется один или несколькоJavaScript-файлов , представляющих собой какую-то библиотеку или инструмент.
npm (аббр. node package manager) — это стандартный менеджер пакетов, автоматически устанавливающийся вместе с Node.js. Он используется для скачивания пакетов из облачного сервера npm, либо для загрузки пакетов на эти сервера.
Файл package.json содержит в себе информацию о вашем приложении: название, версия, зависимости и тому подобное. Любая директория, в которой есть этот файл, интерпретируется как Node.js-пакет , даже если вы не собираетесь публиковать его.
Способ использования файла package.json зависит от того, собираетесь ли вы скачивать пакет или публиковать его.
Если вы хотите скачать пакет вручную, вам необязательно использовать для этого package.json. Вы можете выполнить в терминале команду npm с названием нужного пакета в качестве аргумента команды, и пакет будет автоматически скачан в текущую директорию. Например:
Также для скачивания пакетов вы можете использовать package.json. Создайте в директории вашего проекта файл package.json, и добавьте в него следующий код (мы не указываем название нашего пакета и версию,т. к. мы не собираемся его публиковать; мы указываем название и версию пакетов для загрузки):
Затем сохраните файл и выполните в терминале команду
Если вы хотите использовать в своём проекте множество пакетов, то лучше указать их package.json вместо того, чтобы каждый раз скачивать их через терминал.
Если вы используете package.json для скачивания пакетов, то получается, что вы создаёте пакет для скачивания пакетов. Я знаю, что это странно, но это работает.
Есликакой-либо пакет имеет зависимости, то npm найдёт их через package.json загружаемого пакета и скачает их. В нашем случае у пакета canvas-chart тоже есть файл package.json с прописанными в нём зависимостями.
Чтобы опубликовать пакет, вам потребуется собрать все исходные коды и файл package.json в одной директории. В package.json должны быть указаны название, версия и зависимости пакета. Например:
Посмотрев на этот код, мы можем сказать, что пакет«canvas-project» зависит от пакета «canvas-chart» . Опубликовать пакет можно с помощью комадны
Когда npm скачивает пакет, он ищет свойство «bin» в файле package.json. Если он находит это свойство, то он конвертирует этот пакет в исполняемый файл и размещает его в указанной директории.
Например, команда ниже загружаетgrunt-cli в текущую директорию и конвертирует исходники в исполняемый файл, который затем помещается в папку со всеми исполняемыми файлами. Вследствие этого мы сможем вызвать команду grunt-cli .
Теперь вы знаете, что такое пакет и как он может зависеть от других пакетов. Также вы узнали, как npm работает с пакетами. Давайте перейдём от теории к практике и установим Grunt.
Grunt этотаск-раннер , позволяющий автоматизировать многие повседневные задачи вроде сжатия изображений и минификацииcss-файлов .
Выполните следующие шаги, чтобы установить Grunt и начать работу с ним.
Node.js за 5 минут
Понимание того, что такое Node.js поможет вам лучше разобраться с npm. В двух словах — Node.js это интерпретатор языка JavaScript. Сам по себе Node.js является
Давайте создадим простую программу. Создайте файл helloworld.js и поместите в него следующий код:
Теперь откройте терминал, зайдите в папку с вашей программой и выполните команду
node helloworld.js
. Вместо helloworld.js может быть любой другой файл с Программа просто выведет строку «Hello World» в терминал.
Пакеты в Node.js
Вкратце, пакетом в Node.js называется один или несколько
npm (аббр. node package manager) — это стандартный менеджер пакетов, автоматически устанавливающийся вместе с Node.js. Он используется для скачивания пакетов из облачного сервера npm, либо для загрузки пакетов на эти сервера.
Файл package.json
Файл package.json содержит в себе информацию о вашем приложении: название, версия, зависимости и тому подобное. Любая директория, в которой есть этот файл, интерпретируется как Node.
Способ использования файла package.json зависит от того, собираетесь ли вы скачивать пакет или публиковать его.
Скачивание пакетов
Если вы хотите скачать пакет вручную, вам необязательно использовать для этого package.json. Вы можете выполнить в терминале команду npm с названием нужного пакета в качестве аргумента команды, и пакет будет автоматически скачан в текущую директорию. Например:
Также для скачивания пакетов вы можете использовать package.json. Создайте в директории вашего проекта файл package.json, и добавьте в него следующий код (мы не указываем название нашего пакета и версию,
Затем сохраните файл и выполните в терминале команду
npm install
.Если вы хотите использовать в своём проекте множество пакетов, то лучше указать их package.json вместо того, чтобы каждый раз скачивать их через терминал.
Если вы используете package.json для скачивания пакетов, то получается, что вы создаёте пакет для скачивания пакетов. Я знаю, что это странно, но это работает.
Если
Публикация пакета
Чтобы опубликовать пакет, вам потребуется собрать все исходные коды и файл package.json в одной директории. В package.json должны быть указаны название, версия и зависимости пакета. Например:
Посмотрев на этот код, мы можем сказать, что пакет
npm publish
.Использование пакета в качестве исполняемого файла
Когда npm скачивает пакет, он ищет свойство «bin» в файле package.json. Если он находит это свойство, то он конвертирует этот пакет в исполняемый файл и размещает его в указанной директории.
Например, команда ниже загружает
Теперь вы знаете, что такое пакет и как он может зависеть от других пакетов. Также вы узнали, как npm работает с пакетами. Давайте перейдём от теории к практике и установим Grunt.
Установка Grunt с помощью npm
Grunt это
Выполните следующие шаги, чтобы установить Grunt и начать работу с ним.
- Создайте директорию для вашего проекта. С точки зрения сервера эта директория будет корневой.
- Откройте эту директорию через терминал.
- Теперь скачайте и установите Grunt. Аргумент
-g
указывает npm на то, что пакет следует скачивать в основную папку для хранения пакетов, а не в текущую директорию.
- Для каждой задачи, выполняемой grunt’ом, есть отдельный пакет. Например, можно найти пакеты для минификации JavaScript, склеивания файлов и так далее. Также вы можете создавать собственные пакеты для выполнения
каких-либо задач; такие пакеты будут называтьсяGrunt-плагинами . Давайте установим нужные нам пакеты в директирии нашего проекта. Для этого нам понадобится создать файл package.json и поместить в него код ниже. Затем выполните командуnpm install
. Она загрузит нужные пакеты. Помните о том, что директория, содержащая package.json, сама является пакетом.
- Мы установили пакет для склеивания файлов. Теперь нам надо описать задачу для Grunt. Это делается с помощью файлаGruntfile.js. Когда вы выполняете команду
grunt
в директории проекта, Grunt будет искать Gruntfile.js, чтобы загрузить и выполнить задачи. Давайте подключим наш плагин для склеивания файлов и опишем простую задачу.
- По этому принципу вы можете сами скачать и подключить нужные плагины.
- Теперь вы можете запустить команду
grunt
в директории вашего проекта, чтобы склеитьjs-файлы .
Комментариев нет:
Отправить комментарий