分页:服务器端还是客户端?

IT技术 javascript pagination client-side server-side
2021-03-19 17:55:07

什么是最好的处理分页?服务器端还是使用javascript动态执行?

我正在开发一个使用 ajax 并动态提取数据的项目,所以我一直在研究使用 dom 的 javascript 分页系统 - 但我开始认为最好处理这一切服务器端。

每个人的想法是什么?

6个回答

正确答案取决于您的优先级和要分页的数据集的大小。

服务器端分页最适合:

  • 大数据集
  • 更快的初始页面加载
  • 那些没有运行 javascript 的人的可访问性

客户端分页最适合:

  • 小数据集
  • 更快的后续页面加载

因此,如果您主要出于美观原因进行分页,则在客户端处理它更有意义。如果您要分页以减少初始加载时间,服务器端是显而易见的选择。

当然,如果您使用 Ajax 加载后续页面,则客户端在后续页面加载时间上的优势会减弱。

我想补充一点,如果期望用户会查看第一页然后继续(例如在搜索结果的用例中),那么服务器端分页将减少资源密集型。
2021-04-26 17:55:07
@Pushpendra 足够小,您实际上可以将其全部发送给用户,并期望他们的浏览器能够根据需要对数据进行过滤和排序。因此,测试您的目标平台很重要。
2021-05-18 17:55:07
什么是小数据是现在的问题
2021-05-20 17:55:07

在客户端执行此操作将使您的用户首先下载可能不需要的所有数据,并将消除分页的主要好处。

对于此类 AJAX 应用程序,最好的方法是让 AJAX 调用服务器以获取下一页,并使用客户端脚本添加更新当前页面。

如果加载时间很重要,那么在加载页面时预加载下一页可能是个好主意。这将导致加载时间为零,除非有人非常快地转发两页。
2021-04-20 17:55:07

如果您有大页面和大量页面,您最好通过 AJAX 从服务器以块的形式请求页面。因此,让服务器根据您的请求 URL 进行分页。

您还可以预取用户可能会查看的接下来的几页,以使界面看起来更具响应性。

如果只有几页,预先抓取所有页面并在客户端上分页可能是更好的选择。

即使数据量很小,最好的选择还是服务器端分页。如果您的 Web 应用程序进一步扩展,您以后不必担心。

对于更大的数据量,答案是显而易见的。

服务器端 - 将当前视图的足够内容发送到客户端。