我们知道,在小程序的开发中,一般请求云数据库的数据时,单次最多返回20条,使用云函数获取单次最多返回100条。
我们在进行学区查询小程序开发时,也遇到了数据读取限制的问题,因此尝试过使用云函数的方式获取,但是最后总是无法得到数据。遂尝试数据库逐次获取,最后成功,现将解决办法写下,希望对大家有帮助。
主要思路
首先,使用数据库查询的方式一次只能返回20条数据是无法改变的,所以主要思路就像大家想的那样,逐次获取,再合并到一起。话不多说,看代码吧!
(建议先了解以下Promise的用法,大致是用来解决异步问题的,这里不赘述)
- 首先,我们需要拿到目标查询的总条数,函数如下:
/**获取数据长度开始 */
function getTotal(e) {
return new Promise((resolve, reject) => {
collection.
where({
street: _.eq(e)
}).count()
.then(
res => {
console.log("当前街镇联想查询的总条数:" + res.total),
resolve(res.total)
}
).catch(err =>