Size: a a a

NestJS — русскоязычное сообщество

2020 March 03

IK

ILshat Khamitov in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Я отказался от папки modules, потому что она только увеличивает вложенность (и добавляет modules/ в nest cli команды), а пользы как-то не нашёл, всё равно практически весь код в модулях...
когда в рамках одной nx либы несколько модулей то делаю такую папку
apps
 app1
   module1
     module1-user.service
libs
 module1
   modules
     module1.1
     module1.2
   module1-user.controller
   module1-user-abstract.service
   module1-user-interface.service
   module1.module
источник

W

Wacker in NestJS — русскоязычное сообщество
Andrey Melikhov
У нас так
src
   bootstrap
   client
   common
   server
       enums
       exceptions
       exception-filters
       modules
           core
               tests
               core.module.ts
           my-small
               tests
               my-small.module.ts
               my-small.controller.ts
               hello.service.ts
           my-big
               exception-filters
               exceptions
               tests
               controllers
                   hello.controller.ts
                   world.controller.ts
               services
                   foo.service.ts
                   bar.service.ts
               my-big.module.ts
           shared
               interceptors
                   cool.interceptor.ts
               shared.module.ts
   app.module.ts
   main.ts
Андрей, а подскажите за что папки my small и mybig отвечают?
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Andrey Melikhov
У нас так
src
   bootstrap
   client
   common
   server
       enums
       exceptions
       exception-filters
       modules
           core
               tests
               core.module.ts
           my-small
               tests
               my-small.module.ts
               my-small.controller.ts
               hello.service.ts
           my-big
               exception-filters
               exceptions
               tests
               controllers
                   hello.controller.ts
                   world.controller.ts
               services
                   foo.service.ts
                   bar.service.ts
               my-big.module.ts
           shared
               interceptors
                   cool.interceptor.ts
               shared.module.ts
   app.module.ts
   main.ts
Клиент - это прям клиент? У вас клиент и сервер вместе?
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
И common - это то, что шарится между клиентом и сервером?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Wacker
Андрей, а подскажите за что папки my small и mybig отвечают?
просто примеры файловой структуры для “большого” и “маленького” модуля
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Andrey Melikhov
У нас так
src
   bootstrap
   client
   common
   server
       enums
       exceptions
       exception-filters
       modules
           core
               tests
               core.module.ts
           my-small
               tests
               my-small.module.ts
               my-small.controller.ts
               hello.service.ts
           my-big
               exception-filters
               exceptions
               tests
               controllers
                   hello.controller.ts
                   world.controller.ts
               services
                   foo.service.ts
                   bar.service.ts
               my-big.module.ts
           shared
               interceptors
                   cool.interceptor.ts
               shared.module.ts
   app.module.ts
   main.ts
Что делает core модуль?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Клиент - это прям клиент? У вас клиент и сервер вместе?
да, client — реакт приложение, server — nest, common для dto, типов и вьюх которые нужно шарить
источник

W

Wacker in NestJS — русскоязычное сообщество
Для понимания, сайт с юр. информацией и сервисами (типа генерации доков)

Я делаю модуль для:
- юзер
- информация
- генерация документов
источник

W

Wacker in NestJS — русскоязычное сообщество
верно?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
Что делает core модуль?
core это для сервисов инфрастуктурного уровня которые почему-то пока не удалось вытащить в подключаемые npm-модули
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Andrey Melikhov
да, client — реакт приложение, server — nest, common для dto, типов и вьюх которые нужно шарить
А почему enum exceptions, filters - именно отдельно, в не в shared, как интерсепторы?
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Grigorii K. Shartsev
А почему enum exceptions, filters - именно отдельно, в не в shared, как интерсепторы?
shared это именно модуль, который подключается как модуль и раздаёт только @injectable сущности
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Andrey Melikhov
shared это именно модуль, который подключается как модуль и раздаёт только @injectable сущности
Ок, понял, спасибо
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
конечно почтоянно это всё расползается и переделывается, правила до конца не утряслись. Как уже сказал — здесь например нет ничего про бизнес-логику, мы ещё не придумали где её держать если она не в npm-модулях. Складывать всё в сервисы не хочется/не правильно
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Andrey Melikhov
конечно почтоянно это всё расползается и переделывается, правила до конца не утряслись. Как уже сказал — здесь например нет ничего про бизнес-логику, мы ещё не придумали где её держать если она не в npm-модулях. Складывать всё в сервисы не хочется/не правильно
БЛ привязанную к модулю или какой-то вообще отдельной?
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Для отдельной просто делал какую-то отдельную директорию с абстрактным названием типа lib, и дальше уже делил по функциональности
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Не хочется ержать БЛ внутри фреймворка
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
даже файлово
источник

GS

Grigorii K. Shartsev in NestJS — русскоязычное сообщество
Ну тогда npm модули)

Просто у меня было мало такого, и не хотелось в лерну залезать, а отдельно от приложения не жили модули с бл
источник

AM

Andrey Melikhov in NestJS — русскоязычное сообщество
Кстати, как вам кажется, нормально ли, что DI неста не даёт инверсии?
источник