Angular 5 - Создать проект библиотеки - PullRequest
1 голос
/ 07 февраля 2020

У меня есть два angular приложения, построенных на Angular 5 (взгляните на модули Dep. Ниже)

    (...)
    "@angular/animations": "^5.2.11",
    "@angular/cdk": "^5.2.5",
    "@angular/common": "^5.2.11",
    "@angular/compiler": "^5.2.11",
    "@angular/core": "^5.2.11",
    "@angular/flex-layout": "5.0.0-beta.14",
    "@angular/forms": "^5.2.11",
    "@angular/http": "^5.2.11",
    "@angular/material": "^5.2.5",
    "@angular/platform-browser": "^5.2.11",
    "@angular/platform-browser-dynamic": "^5.2.11",
    "@angular/router": "^5.2.11"
     (...)

Я хочу создать библиотеку или какой-то общий модуль, который может положить в отдельную папку для использования в двух приложениях. Я не могу найти примеров для создания библиотек на Angular 5, потому что, насколько я знаю, это особенности Angular 6+ CLI. Как вручную создать общую библиотеку для двух моих проектов?

1 Ответ

0 голосов
/ 08 февраля 2020

Вы можете сделать оба варианта; Общий модуль проще, но не лучше.

Разработка пользовательской библиотеки с помощью CLI:

ng g library custom-lib

генерирует все ресурсы, которые вам понадобятся, но затем вам нужно установить соответствующую конфигурацию. Некоторые из них:

package.json в библиотеке: вы устанавливаете версию библиотеки и зависимости

package.json в модуле: вы устанавливаете маршруты для сборки, тестирования и упаковки (это сгенерирует Файл .tgz, который можно опубликовать sh через nexus advanced )

imported.json, include.json или public-api.ts, также являются важными файлами для определения компонентов, служб и т. д. c будет экспортировано и предоставлено для совместного использования, и где будет импортировано в приложение расширенный

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

https://angular.io/guide/creating-libraries

этот URL не содержит всей информации, но является первым шагом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...