角4订阅不lazyload

问题描述:

使用这个例子干活:enter link description here角4订阅不lazyload

一切都运行完美 - 直到我做了分量lazyload组件,然后加载器将停止出现。 任何想法我在这里失踪?

谢谢

+0

控制台中是否有任何错误? –

+0

看看这个网页使用FB或谷歌登录它会看到一个加载器,[链接](https://rahulrsingh09.github.io/AngularConcepts/comment) –

+0

控制台没有错误,当我按照脚本的一些断点我看到它在服务中更改显示为true,无论是在正常模式还是在lazyload中,但由于某种原因,在lazyload中甚至难以确定,加载器不显示 – idekkers

好的,发现问题,虽然我不明白原因。

我有一个公共模块中的服务,它是(模块)导入到应用程序模块。 由于某些原因,这些服务在lazyload模块中不起作用,但当我将它们从公共模块中的提供程序部分移至主应用程序模块中的提供程序部分时,它们可以正常工作。

会很高兴明白为什么会发生这种情况?

服务是可注入的,Angular默认为每个提供者(服务)创建一个单例。这些单身人士被传递给你的组件。 延迟加载模块时,将重新创建模块提供程序。因此,该模块内的组件将获得相同服务的新实例。这就是您的订阅没有被触发的原因。

你应该创建一个共享模块女巫可以在懒惰加载模块中使用。此答案可以帮助您: https://stackoverflow.com/a/39672933/2640826