angular - Angular:检查注入的服务是否是该服务的“全局”实例
问题描述
组件是否可以检查它注入的服务是否是该服务的“全局”实例,或者需要非单例实例?
假设我有一个名为<huge-table></huge-table>
. 这个组件使用了几个服务,所有这些服务都应该有自己的本地实例。我希望这个组件需要它自己的这些服务实例,因此强制使用<huge-table>
它们作为提供者的父组件。
笔记:
在我的情况下,将这些服务设置为<huge-table>
组件本身内的提供者是不可能的,因为有兄弟组件也需要相同的本地实例。
例如:
<huge-table></huge-table>
<sibling-component></sibling-component>
...并且两者都需要相同的本地服务实例。
解决方案
只要我跟着。您需要将这些服务包含在父提供者数组中。请记住将它们放在构造函数中。并providedIn: 'root'
从您的服务中删除。应该只是@Injectable()
推荐阅读
- c# - 将整数谓词与 LINQ 进行比较
- flutter - Flutter - 两个地方定义的vector_math
- data-modeling - 如何在概念数据模型中正确显示 M:N 关系?
- android - 如何在应用程序关闭时显示 React Native Push Notification
- javascript - 有没有办法用javascript更改a标签的href
- sql - 如何使用 SSRS 中的名称列将 Id 参数传递给存储过程
- r - 使用字符串对象的内容重命名 R 中的对象
- python - 使用 Python 同时模拟多个鼠标点击或触摸输入
- postgresql - 使用 PGO (The Postgres Operator) 为现有服务器部署备份副本
- next.js - SCRIPT1003:Next JS App + Next Auth 上的预期“:”