繁体   English   中英

在node.js Web应用程序中延迟加载MySQL查询

[英]Lazy Loading for MySQL queries in node.js web app

所以我有一个页面,在get页面时,我从mysql数据库中提取了一些匹配的行。 目前我拉8,因为那是我希望在每个页面上显示的数量。 我想实现Facebook具有的功能,我已经看到它被称为“延迟加载”,当用户向下滚动时,将加载更多内容,在这种情况下,将匹配查询的其他sql行。

我可以抓很多东西,让jQuery一次只渲染八个,但是延迟加载听起来要好得多。 问题是我无法在使用MySQL的节点应用程序的延迟加载中找到任何内容。 是否有人知道教程,文章或想发布有关如何执行此操作的详细说明? (我是新手)

PS我已经看到了一些发布/服务器端的交互,而没有用ajax完成页面,但是我对ajax几乎一无所知,因此,如果有一种方法可以仅使用javascript或jquery来实现,那么我就是这样。 感谢您的任何回复!

您正在谈论的概念也称为“分页”,例如当您看到一个表同时显示10行时,尽管实际上有87行,并且第1页是1-10,第2页是11-20,依此类推。

进行延迟加载时,查询将按日期(或其他条件)排序并按以下方式工作:

  1. 用查询加载页面,查找前10个项目。 LIMIT 0, 10
  2. currentPage=1本地存储在页面的javascript中,与“ page1”关联的大小或滚动限制-它基于像素吗? 或显示的项目?
  3. 检测何时滚动到页面底部或滚动到页面底部(当用户向上滚动时绝对重要!)
  4. 启动延迟加载查询。

    1. 首先在页面上构建微调器
    2. 让您的服务器的查询电话,以相同的顺序,这一次LIMIT基于最后一个页码, currentPage*10currentPage=3 ,所以LIMIT 30 40
    3. 服务器响应时,将结果添加到显示的阵列中。
    4. 增加currentPage数量,作为相关的滚动限制
  5. 等待用户滚动到下一个“底部”并重复步骤3和4。

这是一个粗略的轮廓,希望可以为您指明正确的方向!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM