Команда nrwl nx для генерации lib для модуля nest

Я новичок в nrwl nx cli и тщательно изучил их документацию и не смог найти команду для создания модуля nestjs в виде lib, а не фактического модуля в приложении.

Причина, по которой я хочу создать модуль nestjs в виде lib, заключается в том, что у меня есть несколько приложений nestjs в моем моно-репо, и в соответствии с рекомендациями nrwl nx, если мне нужно поделиться кодом, который в моем случае является модулем, это должна быть библиотека,

Может кто-нибудь, пожалуйста, поделитесь командой, чтобы сделать следующее:-

  1. Создать модуль nestsjs в библиотеках
  2. Создайте сервис nestjs для этого модуля в папке libs

Буду признателен за любую оказанную помощь.

4 ответа

Я получил команду, которая, наконец, выполняет эту работу и делится с другими, если им нужна помощь

ng generate @nestjs/schematics:library mynestlib

Цитата из официальной документации Nx Workspace:

Создание библиотеки Добавление новых библиотек в рабочую область Nx выполняется с помощью команды генератора Angular CLI, как и добавление нового приложения.

ng generate lib mylib
ng generate library mylib # same thing

Это создаст новую библиотеку, поместит ее в каталог libs и настроит angular.json а также nx.json файлы для поддержки новой библиотеки.

Бежать ng generate lib --help чтобы увидеть список доступных опций.

ng generate lib mylib --directory=myteam создаст новое приложение в libs/myteam/mylib,

Если --directory не определен, он спросит вас, в каком каталоге он должен быть сгенерирован, и какой фреймворк следует использовать (Angular или TS).

Если это не работает, пожалуйста, возможно, вам следует проверить версию Nx, а также angular.json,

@nrwl/schematics не может быть коллекцией по умолчанию, используемой в качестве упомянутой проблемы.

angular.json

"cli": {
  "defaultCollection": "@nrwl/schematics",
  "packageManager": "yarn"
},

Я столкнулся с той же проблемой в последнее время.

Хотя @Atul Chaudhary может решить проблему по-другому, я мог бы решить свою проблему после этого комментария .

Таким образом, вам просто нужно добавить новый файл в корневую папку вашей рабочей области nx и указать эту основную информацию в соответствии со структурой вашего проекта.

nest-cli.jsonосновной пример

      {
  "collection": "@nestjs/schematics",
  "sourceRoot": "apps/api/src"
}

Надеюсь, это может помочь некоторым людям :)

Nx теперь имеет прямую поддержку NestJS через их@nrwl/nestплагин . У них также есть этот учебник , который может оказаться полезным.

Другие вопросы по тегам