Поделиться через


Руководство. Node.js для начинающих

Если вы новичок в использовании Node.js, это руководство поможет вам начать с некоторых основ.

Необходимые компоненты

Использование Node.js в Visual Studio Code

Если вы еще не установили Visual Studio Code, вернитесь к предыдущему разделу предварительных требований и выполните действия по установке, связанные с Windows или WSL.

  1. Откройте командную строку и создайте новый каталог с помощью команды mkdir HelloNode, а затем введите каталог: cd HelloNode.

  2. Создайте файл JavaScript с именем "app.js" и переменной с именем "msg" в: echo var msg > app.js

  3. Откройте каталог и файл app.js в VS Code с помощью команды code ..

  4. Добавьте простую строковую переменную ("Hello World"), а затем отправьте содержимое строки в консоль, введя его в файле "app.js":

    var msg = 'Hello World';
    console.log(msg);
    
  5. Для запуска файла "app.js" с Node.js. Откройте окно терминала в VS Code, выбрав Представление>Терминал (или нажмите Ctrl+`, используя символ обратного апострофа). Если необходимо изменить терминал по умолчанию, откройте раскрывающееся меню и выберите Выбрать оболочку по умолчанию.

  6. В окне терминала введите: node app.js. Вы увидите выходные данные : Hello World.

Примечание.

Обратите внимание, что при вводе console в файл "app.js", VS Code отображает поддерживаемые параметры, связанные с объектом console, который можно выбрать из использования IntelliSense. Попробуйте поэкспериментировать с Intellisense, используя другие объекты JavaScript.

Создание первого веб-приложения Node.js с помощью Express

Express — это простейшая, гибкая и оптимизированная платформа Node.js, упрощающая разработку веб-приложения, которое может обрабатывать различные типы запросов, например GET, PUT, POST и DELETE. Express поставляется с генератором приложений, который автоматически создает файловую архитектуру для приложения.

Чтобы создать проект с помощью Express.js, выполните следующие действия.

  1. Откройте командную строку (командная строка, Powershell или любой другой вариант).

  2. Создайте новую папку проекта: mkdir ExpressProjects и введите этот каталог: cd ExpressProjects

  3. Используйте Express для создания шаблона проекта HelloWorld: npx express-generator HelloWorld --view=pug

    Примечание.

    Мы используем команду npx, чтобы выполнить пакет Node Express.js без фактической установки (или временно установить его в зависимости от того, как вы хотите его представить). Если вы попытаетесь использовать команду express или проверить установленную версию Express с помощью: express --version, вы получите ответ, о том, что Express не удается найти. Если вы хотите глобально установить Express, чтобы применять его на постоянной основе, используйте: npm install -g express-generator. Список пакетов, установленных npm, можно просмотреть с помощью npm list. Пакеты будут перечислены в соответствии с глубиной расположения (уровень глубины вложенных каталогов). Установленные пакеты будут расположены на уровне 0, зависимости пакетов — на уровне 1, другие зависимости —на уровне 2 и т. д. Дополнительные сведения см. в статье Различие между npx and npm на сайте StackOverflow.

  4. Изучите файлы и папки, включенные в Express, открыв проект в VS Code, с помощью: code .

    Файлы, генерируемые Express, создадут веб-приложение, использующее конкретную архитектуру, которая на первый взгляд может показаться немного перегруженной. В окне обозревателя VS Code (Ctrl+Shift+E для просмотра), вы увидите, что были созданы следующие файлы и папки:

    • bin. содержит исполняемый файл, запускающий приложение. Он запускает сервер (через порт 3000, если нет альтернативы) и настраивает базовую обработку ошибок.
    • public. Содержит все общедоступные файлы, в том числе файлы JavaScript, каскадные таблицы стилей (CSS), файлы шрифтов, изображения и другие ресурсы, необходимые пользователям при подключении к вашему веб-сайту.
    • routes. Содержит все обработчики маршрутов для приложения. В этой папке автоматически создаются два файла, index.js и users.js, которые служат примерами отделения конфигурации маршрутов вашего приложения.
    • views. Содержит файлы, используемые модулем создания шаблонов. На платформе Express настроен поиск подходящего представления при вызове метода преобразования для просмотра. По умолчанию используется модуль создания шаблонов Jade, но он устарел по сравнению с Pug. Поэтому мы используем флаг --view для изменения модуля (шаблона) представления. Просмотреть параметры как флага --view, так и других флагов можно с помощью команды express --help.
    • app.js. начальная точка вашего приложения. Этот файл загружает все необходимые компоненты и начинает обслуживать запросы пользователей. Его можно назвать связующим компонентом, который объединяет все части.
    • package.json. Содержит описание вашего проекта, диспетчер сценариев и манифест приложения. Его основная цель — отслеживать зависимости приложения и их соответствующие версии.
  5. Теперь необходимо установить зависимости, которые Express будет использовать, чтобы создать и запустить приложение HelloWorld Express (пакеты, используемые для таких задач, как запуск сервера, как определено в файле package.json). В VS Code откройте терминал, выбрав Представление>Терминал (или нажмите Ctrl+`, используя символ обратного апострофа), убедитесь, что вы все еще находитесь в каталоге проекта "HelloWorld". Установите зависимости пакета Express с помощью:

    npm install
    
  6. На этом этапе у вас есть настроенная для многостраничного веб-приложения платформа с доступом к большому количеству API-интерфейсов и множеству служебных методов HTTP, а также ПО промежуточного слоя, что упрощает создание надежного API. Запустите приложение Express на виртуальном сервере, введя следующее:

    npx cross-env DEBUG=HelloWorld:* npm start
    

    Совет

    Часть DEBUG=myapp:* приведенной выше команды означает, что вы указываете Node.js включить ведение журнала в целях отладки. Не забудьте заменить "myapp" именем своего приложения. Имя приложения можно найти в файле package.json в свойстве "name". Использование npx cross-env устанавливает переменную среды DEBUG в любом терминале, но ее также можно задать с помощью конкретного терминала. Команда npm start сообщает npm о необходимости запуска скриптов в файле package.json.

  7. Теперь вы можете просмотреть работающее приложение, открыв веб-браузер и перейдя по адресу: localhost:3000

    Снимок экрана приложения Express, запущенного в браузере

  8. Теперь, когда приложение HelloWorld Express выполняется локально в браузере, попробуйте внести изменения, открыв папку "views" в каталоге проекта и выбрав файл "index.pug". После открытия измените h1= title на h1= "Hello World!" и выберите Сохранить (Ctrl+S). Просмотрите изменения, обновив URL-адрес localhost:3000 в веб-браузере.

  9. Чтобы остановить запуск приложения Express, в терминале введите: CTRL+C

Знакомство с использованием модуля Node.js

Node.js включает в себя средства для разработки серверных веб-приложений. Некоторые из них встроены, а многие другие доступны с помощью npm. Эти модули позволяют выполнять множество задач.

Средство Используется для
GM, sharp Обработка изображений, в том числе редактирование, изменение размера, сжатие и т. д. непосредственно в коде JavaScript
PDFKit Создание PDF
validator.js Проверка строк
imagemin, UglifyJS2 Минификация
spritesmith Создание листа Sprite
winston Ведение журнала
commander.js Создание приложений командной строки

Сведения об операционной системе вашего компьютера можно получить с помощью встроенного модуля ОС.

  1. В командной строке откройте интерфейс командной строки Node.js. После входа вы увидите подсказку >, сообщающую вам, что вы используете Node.js: node

  2. Чтобы определить операционную систему, используемую в данный момент (которая должна возвращать ответ, сообщающий о том, что вы работаете под Windows), введите: os.platform()

  3. Чтобы проверить архитектуру ЦП, введите: os.arch()

  4. Чтобы просмотреть доступные в системе процессоры, введите: os.cpus()

  5. Для выхода из интерфейса командной строки Node.js введите .exit или дважды нажмите CTRL+C.

    Совет

    Модуль ос Node.js можно использовать для выполнения таких действий, как проверка платформы и возврат переменной для конкретной платформы: Win32/.bat для разработки Windows, дарвин/.sh для Mac/unix, Linux, SunOS и т. д. (например, var isWin = process.platform === "win32";).