- 微信小程序云开发读取数据超过20,云函数读取超过100条限制,获取云开发数据库集合里的所有数据的方法
看过石头哥云开发基础课的同学肯定都知道,直接在小程序里请求数据每次最多只能返回20条数据,云函数里请求数据每次最多只能返回100条数据,如果想突破这个限制,最好的方式就是做分页,当然分页我在云开发基础里也有教大家。但是限制存在这么一个需求,如果我们想一次性的拿到数据库里存的所有数据呢,比如数据库里有1000条数据,我们想一下子全部拿到,该怎么做呢??? [图片] 今天就来教大家如何通过云函数每次最多返回100条的限制。 一,云函数突破100条的限制 [图片] 如上图所示,我的num集合里有103条数据,如果按照之前的分页思路,就是分两次请求,第一次请求1-100条,第二次请求101-103条。这样我们虽然是可以拿到103条数据,但是要做两次请求,我们该如何做,才能一次请求就可以获取这103条数据呢。 1-1,突破100条的原理 其实原理和我们分页的原理是一样的,只不过我们用for循环做多次请求,然后把这多次的请求组合到一起,然后把组合好的数据一次性全部返回。这样就通过一次请求获取所有数据。 1-2,代码实现 这里的代码是写在云函数里,操作步骤我都在注释里给大家写出来。 [图片] 如上图所示,我们只需要通过三个步骤,就可以拿到所有的103条数据了。 [图片] 这样我们就可以通过一次请求,获取所有的数据了。是不是感觉很简单。这里把代码贴出来给到大家。 [代码]// 云函数入口文件 const cloud = require('wx-server-sdk') // 云开发环境初始化 cloud.init({env: cloud.DYNAMIC_CURRENT_ENV}) exports.main = async (event, context) => { const db = cloud.database() // 1,获取数据的总个数 let count = await db.collection('num').count() count = count.total // 2,通过for循环做多次请求,并把多次请求的数据放到一个数组里 let all = [] for (let i = 0; i < count; i += 100) { //自己设置每次获取数据的量 let list = await db.collection('num').skip(i).get() all = all.concat(list.data); } // 3,把组装好的数据一次性全部返回 return all; } [代码] 1-3,注意事项 云函数单次返回的数据不能超过1M,如果需要超过1M,则需要使用小程序端的数据查询20条20条的进行组合了。所以如果你一次性要返回很多数据,可以考虑在小程序里直接请求数据库,然后做20条20条的组装。 我下面也会教大家在小程序里做组装。 二,小程序直接请求数据库突破20条 2-1,开启async和await 原理我们这里不在说了,和上面是一模一样的,只不过小程序里使用await需要做下简单的操作,也可以去看下我的另外一篇文章。 《小程序里使用async和await变异步为同步,解决回调地狱问题》 [图片] 现在最新版本的小程序开发者工具好像已经支持async和await方法了,好像不勾选增强编译也没事。但是安全起见,还是勾选下增强编译比较好。 2-2,权限修改 小程序里直接获取数据库里的数据,记得要把集合的权限改一下 [图片] 2-3,代码实现 [图片] 细心的同学肯定可以看出来,上面的代码和我们云函数里的代码基本上一模一样的。 [图片] 到这里我们就完美的突破了小程序的限制,返回我们想要的任何个数的数据了。 后面会总结更多的小程序知识点给大家,欢迎关注,欢迎留言。
2021-06-28 - 微信小程序UI组件库合集
UI组件库合集,大家有遇到好的组件库,欢迎留言评论然后加入到文档里。 第一款: 官方WeUI组件库,地址 https://developers.weixin.qq.com/miniprogram/dev/extended/weui/ 预览码: [图片] 第二款: ColorUI:地址 https://github.com/weilanwl/ColorUI 预览码: [图片] 第三款: vantUI(又名:ZanUI):地址 https://youzan.github.io/vant-weapp/#/intro 预览码: [图片] 第四款: MinUI: 地址 https://meili.github.io/min/docs/minui/index.html 预览码: [图片] 第五款: iview-weapp:地址 https://weapp.iviewui.com/docs/guide/start 预览码: [图片] 第六款: WXRUI:暂无地址 预览码: [图片] 第七款: WuxUI:地址https://www.wuxui.com/#/introduce 预览码: [图片] 第八款: WussUI:地址 https://phonycode.github.io/wuss-weapp/quickstart.html 预览码: [图片] 第九款: TouchUI:地址 https://github.com/uileader/touchwx 预览码: [图片] 第十款: Hello UniApp: 地址 https://m3w.cn/uniapp 预览码: [图片] 第十一款: TaroUI:地址 https://taro-ui.jd.com/#/docs/introduction 预览码: [图片] 第十二款: Thor UI: 地址 https://thorui.cn/doc/ 预览码: [图片] 第十三款: GUI:https://github.com/Gensp/GUI 预览码: [图片] 第十四款: QyUI:暂无地址 预览码: [图片] 第十五款: WxaUI:暂无地址 预览码: [图片] 第十六款: kaiUI: github地址 https://github.com/Chaunjie/kai-ui 组件库文档:https://chaunjie.github.io/kui/dist/#/start 预览码: [图片] 第十七款: YsUI:暂无地址 预览码: [图片] 第十八款: BeeUI:git地址 http://ued.local.17173.com/gitlab/wxc/beeui.git 预览码: [图片] 第十九款: AntUI: 暂无地址 预览码: [图片] 第二十款: BleuUI:暂无地址 预览码: [图片] 第二十一款: uniydUI:暂无地址 预览码: [图片] 第二十二款: RovingUI:暂无地址 预览码: [图片] 第二十三款: DojayUI:暂无地址 预览码: [图片] 第二十四款: SkyUI:暂无地址 预览码: [图片] 第二十五款: YuUI:暂无地址 预览码: [图片] 第二十六款: wePyUI:暂无地址 预览码: [图片] 第二十七款: WXDUI:暂无地址 预览码: [图片] 第二十八款: XviewUI:暂无地址 预览码: [图片] 第二十九款: MinaUI:暂无地址 预览码: [图片] 第三十款: InyUI:暂无地址 预览码: [图片] 第三十一款: easyUI:地址 https://github.com/qq865738120/easyUI 预览码: [图片] 第三十二款 Kbone-UI: 地址 https://wechat-miniprogram.github.io/kboneui/ui/#/ 暂无预览码 第三十三款 VtuUi: 地址 https://github.com/jisida/VtuWeapp 预览码: [图片] 第三十四款 Lin-UI 地址:http://doc.mini.talelin.com/ 预览码: [图片] 第三十五款 GraceUI 地址: http://grace.hcoder.net/ 这个是收费的哦~ 预览码: [图片] 第三十六款 anna-remax-ui npm:https://www.npmjs.com/package/anna-remax-ui/v/1.0.12 anna-remax-ui 地址: https://annasearl.github.io/anna-remax-ui/components/general/button 预览码 [图片] 第三十七款 Olympus UI 地址:暂无 网易严选出品。 预览码 [图片] 第三十八款 AiYunXiaoUI 地址暂无 预览码 [图片] 第三十九款 visionUI npm:https://www.npmjs.com/package/vision-ui 预览码: [图片] 第四十款 AnimaUI(灵动UI) 地址:https://github.com/AnimaUI/wechat-miniprogram 预览码: [图片] 第四十一款 uView 地址:http://uviewui.com/components/quickstart.html 预览码: [图片] 第四十二款 firstUI 地址:https://www.firstui.cn/ 预览码: [图片]
2023-01-10 - 如何解决云开发数据库导出csv文件打开中文乱码问题
如何解决云开发数据库导出csv文件打开中文乱码问题 关键时候还是我知乎厉害,亲测可行 以下是mac系统的解决办法,不用输代码,不用下载额外app,只要excel就可以了~ 1. 打开一个新的excel表格,选择File--->Import[图片] 2. 选择从manager里export出来的csv文件 [图片] 会跳出来一个叫做“text import wizard”的三步骤设置面板;在step1中的file origin选项里,选择Unicode(UTF-8) [图片] 跳过step 2 & 3(不用做任何修改),然后点finish导入csv文件: [图片] 这时候就可以看到没有乱码出现的excel sheet啦! 3. 接下来,选择 File--->Save as [图片] 4. 将file format 选择为CSV UTF-8 (Comma delimited),改好文件名后点save [图片] 5. 打开新保存的csv文件,乱码消失! [图片] 作者:艾米午安 链接:https://www.zhihu.com/question/21869078/answer/428936970 来源:知乎
2020-05-04