Оглавление:
Карта сайта:
Оглавление:
Карта сайта:
Это старая версия документа!
Создать новый проект c помощью Nest CLI очень легко. С установленным yarn , вы можете создать новый проект Nest в терминале ОС с помощью следующих команд:
$ yarn global add @nestjs/cli $ nest new <имя_проекта>
–strict в команде nest new.
При это будет создан катлог для нашего проекта с указанным нами именем <имя_проекта>, в котором будет находиться папка с установленными модулями node_modules и несколько шаблонных файлов, а также будет создан каталог src/ и заполнен несколькими основными файлами.
Описание основных файлов:
app.controller.ts | Основной контроллер с одним маршрутом. |
app.controller.spec.ts | Юнит-тесты для контроллера. контроллера. |
app.module.ts | Корневой модуль приложения. |
app.service.ts | Базовый сервис с единственным методом. |
main.ts | Файл точки входа в приложение который использует функцию NestFactory для создания экземпляра приложения Nest. |
В main.ts добавлена асинхронная функция bootstrap(), которая запускает наше приложение:
main.ts
JS TS
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
Для создания экземпляра приложения Nest, мы используем основной класс NestFactory. NestFactory предоставляет несколько статических методов, позволяющих создать экземпляр приложения. Метод create() возвращает объект приложения, который соответствует интерфейсу INestApplication. Этот объект предоставляет набор методов, описанных в следующих главах. В приведенном выше примере в файле main.ts мы просто запускаем HTTP-сервер, который позволяет приложению обрабатывать входящие HTTP-запросы.
Обратите внимание, что проект, созданный с помощью Nest CLI, создает начальную структуру проекта, которая побуждает разработчиков следовать соглашению о хранении каждого модуля в отдельном каталоге.
Подсказка По умолчанию, если при создании приложения произойдет какая-либо ошибка, ваше приложение звершится с кодом1. Если вы хотите, чтобы он выдавал ошибку, вместо этого отключите параметрabortOnError(напр.,NestFactory.create(AppModule, { abortOnError: false })).
Nest стремится быть платформенно-независимой. Независимость от платформы позволяет создавать переиспользуемые логические части, которые разработчики могут использовать в различных частях приложения. Технически Nest может работать с любым Node HTTP фреймворком после создания адаптера. По умолчанию поддержевается две платформы: express and fastify. Вы можете выбрать ту платформу, которая лучше подходит вашим потребностям.
platform-express | Express — это известный, как минималистский и гибкий веб-фреймворк для node. Это проверенная, готовая к работе библиотека с множеством ресурсов, реализованных сообществом. Пакет @nestjs/platform-express используется по умолчанию. Многие пользователи хорошо знакомы с Express, и им не нужно предпринимать никаких действий, чтобы включить его.. |
platform-fastify | Fastify — это высокопроизводительный фреймворк с низкими накладными расходами, ориентированный на обеспечение максимальной эффективности и скорости. Прочитайте, как это использовать здесь. |
Какая бы платформа ни использовалась, она предоставляет собственный интерфейс приложения. Они рассматриваются соответственно как NestExpressApplication и NestFastifyApplication.
Когда вы передаете тип методу NestFactory.create(), как в примере ниже, объект app будет иметь методы, доступные исключительно для этой конкретной платформы. Однако обратите внимание, что вам не нужно указывать тип, за исключением если вы дейтсвительно хотите получить доступ к лежащий в основе API платформы.
const app = await NestFactory.create<NestExpressApplication>(AppModule);
После завершения процесса установки, чтобы запустить приложение (прослушивающее входящие HTTP-запросы) в командной строке ОС выполните следующую команду:
$ yarn start
Эта команда запускает приложение с HTTP-сервером, прослушивающим порт, указанный в файле src/main.ts. После запуска приложения откройте браузер и перейдите к http://localhost:3000/. Вы должны увидеть надпись Hello World!!
Чтобы отслеживать изменения в ваших файлах, вы можете запустить следующую команду для запуска приложения:
$ yarn start:dev
Эта команда будет следить за вашими файлами, автоматически перекомпилируя и перезагружая сервер.