В настоящее время в моем путешествии по веб-разработке я изучаю JavaScript и пытаюсь проникнуть в мысли тех, кто охотно использует этот язык регулярно, и, возможно, даже тех, кто на самом деле предпочитает его. (Безумная мысль, я знаю.)
В последний раз, когда мы уходили, я прошел курс и многое узнал о структурировании веб-приложений с помощью Meteor. Сегодня я собираюсь углубиться в Hapi: структуру, ориентированную на конфигурацию, и Joi: язык описания схемы объекта и валидатор для объектов JavaScript. (Да, я тоже не совсем уверен, что это значит.)
Я буду использовать курс Hapi.js на Nodecasts.io и модуль NodeSchool Make Me Hapi.
Моя цель на сегодня — не мечтать слишком тоскливо о маршрутах и контроллерах Rails. Если это сработает, моя второстепенная цель — создать приложение.
Кодирование Хапи.
Обновление №1 — npm понимает
Итак, чтобы использовать Hapi, мне пришлось включить его в свой проект. Я уже много раз использовал node и npm (менеджер пакетов Node), но по какой-то причине обычно забываю использовать флаг сохранения.
Этот флаг сохранения используется для отслеживания того, какие зависимости использует приложение, хотя этого может быть недостаточно для приложения производственного уровня. Пища для размышлений.
Обновление №2 — нодмон
Каждый раз, когда я меняю код на стороне сервера (что ВСЕ ВРЕМЯ в курсе об изменении кода сервера), мне приходится перезапускать веб-сервер. Поскольку я не сторонник принципа работай усерднее, а не умнее, я установил пакет nodemon.
Чтобы использовать вместо ввода
node .
чтобы запустить приложение, введите
nodemon .
и nodemon автоматически перезапускает сервер, если замечает какие-либо изменения в приложении.
Умная работа.
Обновление № 3: все кончено
… наконец-то сделано.
Ну, почти. Make Me Hapi взяли надо мной лучшее. Я не мог уложиться в голове после последнего упражнения, поэтому я покопаюсь в нем позже на этой неделе.
Однако я могу перефразировать предыдущие определения. Hapi:это маршрутизатор, который может обрабатывать динамические данные. Joi: проверки – удостоверяются, что у приложения есть верная информация, прежде чем оно отобразит запрошенную страницу.
Итак, успехов.