商店vs在旅途中发出请求



我在我的门户中实现了Q&A的api,现在我有2个选项:

  1. 硬编码html中的类别,只有当类别组件打开时(该组件将是一个扩展面板),问题才会从api加载,也使用请求通过关键字进行搜索;
  2. 从一开始就从api中获取所有问题和类别,并将其放入rxjs存储中,列出并在组件中创建搜索机制;

哪一个对性能更好,为什么?

这两个选项可能都有效,具体取决于您获取的数据量。

  1. 硬编码html中的类别,并且仅当类别组件被打开时(该组件将是一个)扩展面板)的问题将从api加载,也使用请求按关键字进行搜索;

类别不需要硬编码;它们可以从要填充到页面中的远程存储中检索。但是,无论您是否硬编码您的类别,加载关于扩展的类别问题(延迟加载)都是一个很好的策略。此外,由于每个类别都加载了大量的问题,您可以实现分页或虚拟滚动来解决性能问题。总而言之,结合延迟加载和分页(或虚拟滚动)策略应该对性能有很好的影响。最重要的是,你的搜索api也应该表现良好(因为它过滤掉了其他类别和当前类别内其他页面的问题)。

  1. 从一开始就从api中获取所有的问题和类别,并将其放入rxjs商店中,列出并制作组件中的搜索机制;

存储在rxjs的存储是不需要的,因为你的问题的状态是不会被改变的。一个服务可能就足够了。至于性能,加载大量的问题可能会导致性能不佳。但更重要的是,这样的策略会让你的应用"冻结"。(至少在下次客户端刷新浏览器之前)。

最新更新