2.4 KiB
Mock Service Worker
Для локальной разработки на моках используется Mock Service Worker версии 1.3.5
Что бы замокать эндпоинт необходимо:
Ознакомится с возможностями библиотеки https://v1.mswjs.io/docs/
В packages/shared/mocks создать папку для эндпоинта или группы эндпоинтов которые объеденены по смыслу
В папке, для удобства поддержки и рефакторинга необходимо вести следующее разделение по файлам:
- Файл(-ы) для эндпоинта
- Файл(-ы) для данных
- Один файл для ре-экспорта
Как создать свой обработчик лучше посмотреть в документации самого msw https://v1.mswjs.io/docs/api/rest
Наружу из папки экспортируются только сами обработчики (handlers). Моки и прочие вспомогательные функции, используемые например для создания сложных моков, экспортировать не нужно
Экспортируемые обработчики нужно подключить к Mock Service Worker, в общем файле packages/shared/mocks/handlers.ts
Сам Mock Service Worker один и запускается в msb-host при старте
Подразумевается что при локальной разработке команды будут поднимать msb-host+свой микрофронт, по этому такого сетапа будет достаточно
- Ведите зеркальный нейминг тому как в сервисе-потребителе, так будет проще ориентироваться. Касается названия папки, файла эндпоинта и переменных внутри файла эндпоинта
- Не складывайте все эндпоинты в один файл в папке, поможет избежать конфликтов при разработке
- Xраните данные в отдельном файле от обработчика, т.к. они чаще подлежат рефакторингу