微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用providedIn:platform

如何解决使用providedIn:platform

我正在处理一个个人项目,并且有一个用例,我需要在多个角度元素之间共享单个服务实例(库)...

我知道 angular 9 为 Injectable 装饰器(providedIn:platform)提出了一个新标志,主要是为了在多个 angular 元素(应用程序)之间共享一个服务(库)实例。我找不到任何解释如何使用标志的示例项目。

根据providedIn 标志的角度文档:

'platform' : 所有共享的特殊单例平台注入器 页面上的应用程序。

但是,由于每个 angular element bundle 都单独包含服务代码,因此该标志对我不起作用。

我在 github 线程中读到我需要使用 ngx-build-plus 来外部化库,我从 angular 元素外部化了库,然后将其作为全局 umd 包。

我在 angular 元素包中没有看到任何服务代码,但是,即使使用 (providedIn:platform) 标志,我仍然可以看到该服务的多个实例正在运行。

我看到很多人在这个论坛上问了同样的问题,但没有得到正确的指导,这就是为什么如果有人能指出一个我们可以学习的示例项目,那将是非常有益的,谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。