Руководство. Node.js для начинающих
Если вы новичок в использовании Node.js, это руководство поможет вам начать с некоторых основ.
- Использование Node.js в Visual Studio Code
- Создание первого веб-приложения Node.js с помощью Express
- Попробуйте использовать модуль Node.js
Необходимые компоненты
- Установка Node.js в Windows или в подсистеме Windows для Linux.
Если вы впервые пробуете Node.js, рекомендуем выполнить установку непосредственно в Windows. Дополнительные сведения см. в статье Выбор между установкой Node.js в Windows и подсистеме Windows для Linux.
Использование Node.js в Visual Studio Code
Если вы еще не установили Visual Studio Code, вернитесь к предыдущему разделу предварительных требований и выполните действия по установке, связанные с Windows или WSL.
Откройте командную строку и создайте новый каталог с помощью команды
mkdir HelloNode
, а затем введите каталог:cd HelloNode
.Создайте файл JavaScript с именем "app.js" и переменной с именем "msg" в:
echo var msg > app.js
Откройте каталог и файл app.js в VS Code с помощью команды
code .
.Добавьте простую строковую переменную ("Hello World"), а затем отправьте содержимое строки в консоль, введя его в файле "app.js":
var msg = 'Hello World'; console.log(msg);
Для запуска файла "app.js" с Node.js. Откройте окно терминала в VS Code, выбрав Представление>Терминал (или нажмите Ctrl+`, используя символ обратного апострофа). Если необходимо изменить терминал по умолчанию, откройте раскрывающееся меню и выберите Выбрать оболочку по умолчанию.
В окне терминала введите:
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, выполните следующие действия.
Откройте командную строку (командная строка, Powershell или любой другой вариант).
Создайте новую папку проекта:
mkdir ExpressProjects
и введите этот каталог:cd ExpressProjects
Используйте 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.Изучите файлы и папки, включенные в Express, открыв проект в VS Code, с помощью:
code .
Файлы, создаваемые с помощью Express, создают веб-приложение, использующее архитектуру, которая может показаться немного перегруженной. В окне обозревателя VS Code (Ctrl+Shift+E для просмотра), вы увидите, что были созданы следующие файлы и папки:
bin
. Содержит исполняемый файл, который запускает приложение. Он запускает сервер (через порт 3000, если не указана альтернатива) и настраивает базовую обработку ошибок.public
. Содержит все общедоступные файлы, включая файлы JavaScript, таблицы стилей CSS, файлы шрифтов, изображения и другие ресурсы, необходимые пользователям при подключении к веб-сайту.routes
. Содержит все обработчики маршрутов для приложения. В этой папке автоматически создаются два файла,index.js
иusers.js
, которые служат примерами разделения конфигурации маршрута приложения.views
. Содержит файлы, используемые модулем шаблонов. Express настроен на поиск подходящего представления при вызове метода преобразования. Обработчик шаблонов по умолчанию — Jade, но Jade является устаревшим в сравнении с Pug, поэтому для изменения подсистемы просмотра (шаблона) мы использовали флаг--view
. Параметры флага--view
и другие можно увидеть, используяexpress --help
.app.js
. Начальная точка приложения. Она загружает все и начинает обслуживать запросы пользователей. По сути, это связующий элемент, который содержит все части вместе.package.json
. Содержит описание проекта, диспетчер скриптов и манифест приложения. Его основное назначение заключается в отслеживании зависимостей приложения и их соответствующих версий.
Теперь необходимо установить зависимости, которые Express будет использовать, чтобы создать и запустить приложение HelloWorld Express (пакеты, используемые для таких задач, как запуск сервера, как определено в файле
package.json
). В VS Code откройте терминал, выбрав Представление>Терминал (или нажмите Ctrl+`, используя символ обратного апострофа), убедитесь, что вы все еще находитесь в каталоге проекта "HelloWorld". Установите зависимости пакета Express с помощью:npm install
На этом этапе платформа настроена для многостраничного веб-приложения, имеющего доступ к большому спектру интерфейсов 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
.Теперь вы можете просмотреть работающее приложение, открыв веб-браузер и перейдя по адресу: localhost:3000
Теперь, когда приложение HelloWorld Express выполняется локально в браузере, попробуйте внести изменения, открыв папку "views" в каталоге проекта и выбрав файл "index.pug". После открытия измените
h1= title
наh1= "Hello World!"
и выберите Сохранить (Ctrl+S). Просмотрите изменения, обновив URL-адрес localhost:3000 в веб-браузере.Чтобы остановить запуск приложения Express, в терминале введите: CTRL+C
Использование модуля Node.js
В Node.js есть инструменты для разработки серверных веб-приложений, некоторые из них встроены и многие другие доступны через npm. Эти модули могут помочь во множестве задач:
Средство | Используется для |
---|---|
gm, sharp | Обработка изображений, включая редактирование, изменение размера, сжатие и т. д., непосредственно в коде JavaScript |
PDFKit | Поколение PDF |
validator.js | Проверка строки |
imagemin, UglifyJS2 | Минификация |
spritesmith | Создание листа спрайтов |
winston | Ведение журналов |
commander.js | Создание приложения командной строки |
Давайте воспользуемся встроенным модулем ОС для получения сведений об операционной системе компьютера:
В командной строке откройте интерфейс командной строки Node.js. После входа вы увидите подсказку
>
, сообщающую вам, что вы используете Node.js:node
Чтобы определить операционную систему, используемую в данный момент (которая должна возвращать ответ, сообщающий о том, что вы работаете под Windows), введите:
os.platform()
Чтобы проверить архитектуру ЦП, введите:
os.arch()
Чтобы просмотреть доступные в системе процессоры, введите:
os.cpus()
Оставьте интерфейс командной строки Node.js, введя
.exit
или дважды нажав CTRL+C.Совет
Модуль OS Node.js можно использовать для выполнения таких действий, как проверка платформы и возврата переменной для конкретной платформы: Win32/.bat для разработки Windows, дарвин/.sh для Mac/unix, Linux, SunOS и т. д. (например,
var isWin = process.platform === "win32";
).
Windows developer
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по