【发布时间】:2018-07-03 20:53:06
【问题描述】:
您能告诉我如何仅在第一次从服务器获取数据并显示到屏幕上吗?但是如果用户再次访问或组件再次加载,它会从存储中获取数据。我正在使用带有 ngrx 的 redux。
我制作了一个示例应用程序,其中有两个按钮 home screen
和new screen 主屏幕我显示来自server 的列表。当我单击new screen 按钮并再次返回主屏幕时,它会服务器并获取数据。我不想再次点击。我想要从store 获取数据。我将如何获取它
这是我的code
(不要在 chrome stackblitz 中打开此链接在 chrome 中有问题)
export class ListComponent implements OnInit {
products$: Observable<Product[]>;
constructor(private productService: ProductService,
private store: Store<fromApp.ProductState>,
private router : Router
) {}
ngOnInit() {
this.store.dispatch(new productActions.Load());
this.products$ = this.store.pipe(select(fromProduct.getProducts))
}
}
【问题讨论】:
-
这不是重复的问题
-
这不是一个有用的断言。为什么不?你从阅读这个问题中学到了什么,你还想知道什么?你试过了吗?你的具体情况是什么阻止了它的工作? Edit 问题。
-
首先他们没有使用
ngrx或存储。其次我将如何检查数据是否存在于存储中 -
1.这有关系吗?您正在谈论缓存服务器数据,它在应用程序中的位置并不一定重要。 2. 我想相关文档会告诉你如何检查商店里是否有东西。