我有一个TodoService
,它将数据流作为Observable<Todo>
返回。在TodoService
内部,我使用http。
我需要在2个组件Page1Component
和Page2Component
中使用此服务。因此,我在构造函数中注入服务。
这两个组件显示在使用<router-outlet>
的应用程序菜单中的单独页面上。每个组件都显示待办事项列表,但不同之处。
首先我使用了ngOnInit
,但每次显示一个组件时都会调用它。它会导致Todo
s的视图闪烁。我想让这个视图稳固,只有当流中的数据发生变化时才会改变。
当您在页面Dashboard
和Heroes
之间切换时,您可以在Tour of heroes demo中观察到闪烁的相同效果。
答案 0 :(得分:0)
检查您是否正在注入同一服务的2个实例。
如果是这样,您可能需要在父组件中注入服务,以便在两个组件之间共享它。
PS。作为内存中的缓存的共享变量应该保存在服务中。然后,如果已经通过API更新了缓存,则每个组件都可以加载缓存。