我正在开发Angular6库,该库将用作许多内部网站的基础。它将主要提供服务,但还将提供一些组件。
我想为此库创建一个演示应用程序,以演示使用服务的各种方式,就像组件库演示使用组件的各种方式一样。
问题在于这些服务被设计为在根目录下提供,从而使它们在根目录下单身。这样一来,就很难拥有一个可以在不同路径下显示不同服务行为的演示应用程序,而无需在浏览器中重新启动该应用程序。
是否有一种策略可以使我的库在应用程序(应用程序模块)中使用时正常运行,但能够在演示应用程序中构建/销毁?
如果我创建一个LibraryRootModule,然后将所有要设置的内容设置在LibraryRootModule中,那会有所帮助吗? AOT将如何处理?我还担心,使用provideIn root的第三方依赖项可能无法与该策略配合使用。
任何见解将不胜感激。谢谢。
答案 0 :(得分:0)
1)也许您应该使用forRoot()模式:https://angular.io/guide/singleton-services#the-forroot-pattern;
2)也许您应该在一个网站上使用其他Angular应用程序。并使用Platform Injector:https://blog.angularindepth.com/angular-dependency-injection-and-tree-shakeable-tokens-4588a8f70d5d
希望有帮助!