当前位置: 首页 > Web前端 > JavaScript

基于云的答题活动小程序v2.0-排名页利用云开发能力实现查询答题结果和排名功能

时间:2023-03-27 00:40:25 JavaScript

项目技术栈微信原生小程序+云开发。为什么选择微信原生小程序进行开发?因为它可以直接应用它的云开发能力。这里我主要使用云开发能力中的小程序端SDK。说白了就是用javascript直接操作数据库即可。本文前言基于云答题小程序v2.0的源地址,以及教大家搭建答题小程序v1.0的系列文章目录。在11月的最后一天及时完成]本文底部。该项目需要进行这次消防知识竞赛。每个人每天都有无限次的答题机会,结果由高到低排名。设一等奖2人,二等奖5人,三等奖10人,优秀奖20人。技术要点1.Collection是指数据库集合引用。2.Collection.where(condition:Object):Collection指定查询条件,并返回一个新的集合引用,带有新的查询条件。3.Collection.orderBy(fieldPath:string,string:order):Collection指定查询排序条件。order只能取asc或者desc。同时也支持多字段排序,只需多次调用orderBy,多字段排序的顺序会按照调用orderBy的顺序对多个字段进行排序。4.Collection.get():Promise获取集合数据,或者获取根据查询条件过滤后的集合数据。小程序:如果不指定限制,默认为最多20条记录。该小程序与回调样式调用兼容。关键代码按照答案得分的totalScore字段降序排列(totalScore越大靠前)getRankList(){//数据库集合activityScore的聚合操作实例.where({_openid:_.exists(true)}).orderBy('totalScore','desc').get().then(res=>{//获取集合数据,或者获取根据查询条件过滤后的集合数据。console.log('[云数据库][排行榜]查询成功')console.log(res.data)letdata=res.data||[];//从逻辑层发送数据到视图层,通俗的就是更新数据到页面显示this.setData({rankList:data});})}来实现结果。本文总结为小程序创作者,无论是在答题小程序还是在其他应用场景中,都太常见了。因此,对排行榜进行一些扩展思考。需要根据自己的产品采用合适的设计方法,避免结构散乱,信息过多干扰。对于很多产品来说,该清单对于商业化来说具有相当大的商业价值。