1. Уроки Node.js .Модули. Часть 1.

nodejs-module-development-1-638

Давайте создадим Ваш первый проект с Node.js. Нашей основной целью будет знакомство с модулями – способом который Node предлагает для организации проекта.

Установите Node на свой компьютер.

https://nodejs.org

Начнем с того что откроем ваш редактор в новой пустой директории start, здесь будет находиться наш проект. Нужно так чтобы ваш редактор воспринимал написанный вами код не как простой JS а как синтаксис Node, перед началом настройте это самостоятельно.

Вы можете следовать за прогрессом нашего урока скачав код из репозитория:

Создадим файл с именем server.js

И добавим следующий код:

Добавим объект User, который будет создавать пользователей, у пользователей будут методы, к примеру, Hello, где who это другой user. Далее небольшой код по его использованию.

Запускаем через консоль/терминал: node server.js

Работает! Результат видно из консоли.

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

Создадим файл user.js

И вынесем туда данные

Также подключим наш файл сделав следующую запись на первой строке server.

Готово, запускаем! Не работает, так как переменная User не определена. Почему? Это происходит из-за того, что в Node вы можете объявлять переменные, функции, которые будут являться глобальными для данного файла. Они не становиться доступны для подключения, это позволяет писать действительно независимые модули и не опасаться, что вы перезапишите какую-то глобальную переменную другого модуля. Как же поступить в нашем случае.

Для этого используют система экспортов. В каждом модуле есть специальная переменная exports – это объект, и то что вы туда поместите вернуться как результат require.

Например (сделаем запись в User.js):

А в server.js добавим

Результатом данного require будет объект который здесь называется exports, сейчас он состоит из единственного свойства функции user.

Если необходимо создать глобальную переменную в Node.js, то необходимо объявить ее таким образом:

А также изменить server:

Проверим.

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

Поговорим о видах модулей:

  • JS – модули которые мы только что рассмотрели
  • NODE – файлы с таким расширением пишутся на языке C++ . Используются, когда нужна высокая производительность либо, когда нужно использовать какие-то возможности операционной системы, к которым нельзя обраться из JS и Node.js.
  • JSON

Создадим собственный JSON файл, который будет хранить информацию о нашей фразе в console.log User’а. Для этого:

Создадим JSON файл c именем ru.json

В него запишем:

Таким образом найденный Json будет храниться во phrases.

В users запишем:

Модули в формате JSON используется, когда хочется хранить какие-то данные в простейшем виде, в виде файлов.

Для дальнейшего развития проекта выделим user в отдельную директорию.

Создадим папку user.

Директории тоже можно подключать. При этом Node.js ищет файл с таким названием потом ищет файл .node/.JSON, если не находит ничего из перечисленного, то ищет директорию с названием user и в этой директории ищет файл с названием index.*и считает его модулем. Перетаскиваем user JS в директорию и переименуем в index.js, туда же переместим наш JSON. Теперь, если понадобиться добавить файлы для модуля user можно будет добавить их в эту директорию.

Вы можете скачать код урока  из следующего репозитория:

RPA_to_be_continuedМатериал урока взят из следующего скринкаста.

We are looking forward to meeting you on our website soshace.com

About the author

Stay Informed

It's important to keep up
with industry - subscribe!

Stay Informed

Looks good!
Please enter the correct name.
Please enter the correct email.
Looks good!

Related articles

Уроки Express.js . Логгер, Конфигурация, Шаблонизация с EJS. Часть 2.

Favicon – это все connect Middleware, он смотрит, если url имеет вид favicon.ico, то он читает favicon и ...

3. Уроки Express.js. Шаблонизация с EJS: Layout, Block, Partials

В реальной жизни у нас обычно больше, чем один шаблон. Более того, если уж так ...

24.11.2016

Уроки Express.js. Основы и Middleware. Часть 2.

Всем привет! Давайте продолжим наш урок об основах Express и Middleware. Итог (добавим в ...

Sign in

Forgot password?

Or use a social network account

 

By Signing In \ Signing Up, you agree to our privacy policy

Password recovery

You can also try to

Or use a social network account

 

By Signing In \ Signing Up, you agree to our privacy policy