阻止在Angular中访问服务实例

时间:2017-09-05 03:14:34

标签: angular

快速而且可能是一个简单的问题,但我找不到搜索互联网的答案。

在我的应用程序中使用Angular 4.x并且我有一个核心模块,我保留了我的单件服务。我也有一些服务包装一些第三方sdk,我不希望这些包装服务可以被访问我的功能模块。但是因为我必须提供这些服务才能使用它们,这使得它们可以在我的核心模块之外的组件和服务中注入。

如何在我的核心模块中保持这些服务的私密性?

1 个答案:

答案 0 :(得分:1)

限制访问的唯一方法是定义范围 范围取决于提供服务的位置 如果在组件或指令上提供服务,则只有组件或后代可以注入它。

如果在模块上提供服务,它将全局可用。

如果在延迟加载的模块上提供服务,则只有此模块和与此延迟加载模块一起加载的模块才能注入该服务。

没有其他方法可以限制服务的注入位置。