这里后台做了分页功能,点击页数传来对应页的数据,但是如果不传来全部的数据,上面的查询就只能查询本页的,难道要一次传过来所有数据?这样不是卡到爆炸吗
当页数很少的时候,一次查询获取全部数据没有毛病。
但是当页数多了,一次查询获取全部数据,就不行了。所以你可以使用分页的功能,一次传一页,之后用户点击,使用ajax向后台请求下一页的数据。
可以在浏览器端缓存所有的数据,然后在前端进行筛选。
当然,也可以将输入的内容传到后端,让后端返回结果。
这两种方法都是可行的,具体取决于你对于列表的需求。如果你需要点击联想查询结果直接跳到对应详情的话,就无需更新列表,就可以直接做前端处理。但是如果需要点击联想查询结果时更新列表数据,按照结果返回新的分页列表的话,由于要更新分页信息,一般在服务器端处理(虽然前端处理也是可行的)。
但无论是前端还是后端进行数据处理,对于这种数据量比较大的查询而言,每次都查询会影响效率,所以一般都会做缓存(具体是服务器缓存还是前端缓存取决于你是前端处理还是后端处理),输入的时候只对缓存的数据进行筛选和排序展示。
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答889 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
大概有两种方案。
1是调用后端接口,每次输入都让后端做联想查询再返回相应的数据。
2是后端返回一个推荐数据,只在推荐数据里做联想。