Я разрабатываю библиотеку Angular6, которая будет использоваться в качестве основы для многих внутренних веб-сайтов. Он будет предоставлять в основном услуги, но также предоставлять несколько компонентов.
Я хочу создать демонстрационное приложение для этой библиотеки, которое может продемонстрировать различные способы использования служб, так же, как библиотека компонентов демонстрирует различные способы использования компонентов.
Проблема в том, что эти службы были разработаны для предоставления в корневом каталоге, что делает их одиночными в корневом каталоге. Это затрудняет создание демонстрационного приложения, которое может показывать различное поведение службы на разных маршрутах без жесткого перезапуска приложения в браузере.
Есть ли стратегия, которую я могу использовать, чтобы моя библиотека работала нормально при использовании в приложении (app.module), но могла быть построена / уничтожена в демонстрационном приложении?
Если я создам LibraryRootModule, а затем установлю все, что должно быть предоставлено в LibraryRootModule, поможет ли это? Как с этим будет работать AOT? Я также обеспокоен тем, что сторонние зависимости, которые используют providedIn root, могут не работать вместе с этой стратегией.
Любые идеи будут оценены. Спасибо.