Развернуть приложение Angular 6 с библиотекой компонентов
Я создал приложение Angular 6, состоящее из библиотеки, содержащей компоненты, которые должны быть повторно использованы в будущем, и приложения. Я создал все, используя угловую Cli, поэтому у меня есть структура по умолчанию
my-app
|
+-projects
| |
| +-my-lib
| |
| +-src
| +-package.json
|
+-src
+-package.json
Чтобы построить проект, я сначала собираю библиотеку, используя ng build my-lib --prod
а затем собрать приложение с помощью ng build --prod
, После этого каталог dist выглядит следующим образом
dist
|
+-my-app
+-my-lib
Теперь у меня вопрос, как развернуть это на моем сервере, чтобы приложение имело доступ к библиотеке. Локально все работает, так что я должен просто передать весь dist
каталог на мой сервер как обычно? Или я должен опубликовать библиотеку в npm и добавить ее в качестве обычной зависимости к моей package.json
, И если да, то как мне настроить это, чтобы не мешать локальной разработке, где я хочу создать библиотеку в каталоге dist?
1 ответ
Ваш my-app
сборка уже содержит my-lib
поэтому библиотека должна быть достаточной для развертывания dist/my-app
,
Что касается публикации в npm, то это действительно ваше дело.
Для местного развития, вы можете рассмотреть возможность использования npm link
:
- cd dist / my-lib
- ссылка npm
- cd to / your / project / dir
- npm ссылка your-library-name (возможно
my-lib
)
Когда вы меняете библиотеку и строите заново, нет необходимости повторять ссылку, она подхватит новую версию.
Однако из моего опыта, когда вы обновляете или устанавливаете другие "обычные" пакеты, вы должны сделать ссылку снова.