首页 > 解决方案 > 如果在父组件中多次使用子组件选择器,则服务会被多次调用

问题描述

我面临的问题是,服务被多次调用。

我在父组件中使用了两次相同的子组件选择器。

我只用一次 ngOnInit() 编写的服务。

理想情况下,如果我在 ngOnInit 中编写了服务,它应该在页面加载时调用一次。

但它被调用了 3 次。

1 次 ngonInit 和 2 次用于两个选择器。

除了 ngOnInit,我没有在任何生命周期中调用过该服务。

标签: angular

解决方案


@Raman,我不确定该服务的作用,但我认为子组件和父组件在页面加载时都需要服务的结果。

在这种情况下,服务会被多次调用,正如@Baris 所说,这是 Angular 中的预期行为。

您可以做一件事,如果您确实需要在父组件的某处使用该服务结果,然后再创建一个新组件并在新添加的组件中使用该服务。现在您可以在父组件中添加这个新组件,以便页面加载服务将调用新添加的子组件而不是父组件,以便每个子组件都可以从其页面/文件调用服务。此解决方案可能会对您有所帮助。


推荐阅读