Skip to content

关于forRoot()和单例服务的一些疑问 #274

@gsbybb

Description

@gsbybb

请教大家一个问题。

看文档说:当我们需要让一个module中的服务是应用级服务就需要调用forRoot() 方法, 这个方法是返回一个ModuleWithProviders。但是我发现RouteModule.forChild() 返回的也是一个ModuleWithProviders。所以对如何提供一个全局的单例服务的方法产生了疑惑。
我们可以通过在根模块注入这个服务让它变成单例的,但是如果我的sharedModule中的某个指令要依赖一个单例服务我该怎么做?就比如我写了一个模块用来根据权限控制页面的元素是否显示,这个模块包含一个指令和一个服务,指令会依赖这个服务获取权限,因为这个指令我可能在每个页面都会用到,所以我可能需要多次导入这个模块,但是我还是希望模块中的这个服务是单例的。那么我现在应该怎么做才能让这个服务是单例的?

谢谢!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions