- 优秀在线答题小程序汇总分享
平时做在线答题小程序,参考过很多有优秀的线上案例,现将曾经参考的一些小程序分享出来,如果有做在线答题的同学可以看看,或许会有一些新的产品idea 以下小程序排名不分先后 ①、班级小管家 [图片] ②、每日交作业 [图片] ③、小打卡 [图片] ④、作业登记簿 [图片] ⑤、班小二 [图片] 以上五个算是头部的几个,下面再总结几个比较平民化的 ⑥、随堂小测 [图片] ⑦、答题助理 [图片] ⑧、在线考试小助手 [图片] ⑨、驾考宝典 [图片] ⑩、万题库 [图片] 11、360考试宝典 [图片] 12、出题答题测试助手 [图片] 13)考研政治题库v抢先版 [图片] 14)小小答题丨在线考试问卷调查 [图片] 先总结这么多,后面如果有机会我会捡几个,把小程序具体描述下。 大家有没有想补充的,可以评论区留言,大家如果有什么好的也可以在评论去推荐
2020-10-23 - #云开发挑战赛#-InterviewHub-我一般一个人上单
InterviewHub介绍 一、InterviewHub介绍 1.1 概要介绍 这是一个收录互联网行业开发岗方向常见面试题目的工具类小程序,希望能帮助到开发者提高面试技巧,提高技术能力,从而寻找到心仪的工作。目前题库正在不断完善中。 1.2、目标用户 本程序面向计算机相关专业或其他想从事互联网开发相关工作的人员。 1.3、应用场景 本小程序作用于帮助开发者掌握面试笔试相关的开发知识,从而应对相关的面试笔试,找到心仪的工作。 二、实现思路与架构 2.1 思路架构图 [图片] 三、作品实现 3.1 作品部分截图 [图片] [图片] [图片] [图片] [图片] 3.2 部分功能代码演示 3.2.1 题库选择与加载 [代码] radioChange: function (e) { // console.log(e) let current = this.data.radioItems.filter((item) => { return item.value === e.detail.value }) wx.showModal({ title: "确认修改", content: `确定选择${current[0].name}吗?`, cancelColor: '#707070', success: (res) => { // 设置新存储情况 if (res.confirm) { wx.setStorageSync('collection', current[0].value) wx.navigateBack() } else if (res.cancel) { this.data.radioItems.forEach(item=>{ item.checked = false }) this.setData({ radioItems:this.data.radioItems }) } } }) chooseTiku(e) { // console.log(e.currentTarget.dataset.value) // 获取参数(下标) let currentClick = e.currentTarget.dataset.value; let name = e.currentTarget.dataset.name; // 显示是否确定 wx.showModal({ title: '提示', content: `确定是否选择${name}?`, success: (res) => { if (res.confirm) { // this.data. this.setData({ currentTiku: this.data.tiku[currentClick].collection }, () => { wx.setStorageSync('face_collection', this.data.tiku[currentClick].collection) this.updateCurrent() }) } else if (res.cancel) { return; } } }) onLoad: async function (options) { const db = wx.cloud.database(); const _ = db.command; // loading start wx.showLoading({ title: '加载中', }) // 从数据库读取当前可用题库并设置 let res = await db.collection("choose").get(); // console.log(res.data) let temp = res.data.map((item, index) => { return { _id: item._id, name: item.name, value: item.collection, } }) // 获取当前本地缓存数据 let current = wx.getStorageSync("collection"); // 设置数据 this.setData({ radioItems: temp, currentCollection: current }, () => { wx.hideLoading({ complete: (res) => { }, }); }) }, [代码] 3.2.2 部分内容调用了weui [代码]{ "usingComponents": { "icon-self":"../../components/icon-self/icon-self", "mp-dialog":"weui-miniprogram/dialog/dialog" }, "navigationBarTitleText": "选择题" } [代码] 3.2.3 "我的"页面授权与登录态检测 [代码] data: { isLogin: false, avatar: "", nickname: "" }, getUserInfo(e) { // 设置授权信息 this.setData({ avatar: e.detail.userInfo.avatarUrl, nickname: e.detail.userInfo.nickName, isLogin: true }); }, clearStorage() { // 清除缓存 wx.showModal({ title: '提示', content: '确定要清除数据吗?', success(res) { if (res.confirm) { wx.showLoading({ title: '清除中', }) wx.clearStorageSync(); wx.hideLoading({ success: (res) => { }, }) } } }) }, /** * 生命周期函数--监听页面加载 */ onLoad: async function (options) { // 登录态判断 wx.getUserInfo({ complete: (res) => { // console.log(res); if (res.userInfo != undefined) { this.setData({ avatar: res.userInfo.avatarUrl, nickname: res.userInfo.nickName, isLogin: true }); } }, }) }, [代码] 3.2.4 “面试”板块 题目切换设置 [代码]changeShow() { this.setData({ showAns: !this.data.showAns }) }, nextTick() { let length = this.data.current.pages.length; let idx = this.data.idx; if (idx < length - 1) { idx++ this.setData({ idx, showAns: true }) } else { this.setData({ error: "已经是最后一个了!" }) } }, prevTick() { let idx = this.data.idx; if (idx > 0) { idx-- this.setData({ idx, showAns: false }) } else { this.setData({ error: "已经是第一个了!" }) } }, [代码] 四、预览与使用 4.1 体验版二维码 [图片] 4.2 云开发数据集合 在源代码根目录data文件夹下 五、开发者 [代码]WHUT-XGP Github个人主页:https://github.com/WHUT-XGP khannb Github个人主页: https://github.com/khannb[代码]
2020-09-17 - 开源在线答题小程序
项目概述 本文介绍的是一款能在小程序上刷题的工具类小程序,目前主要面向的用户是证券从业人员、基金从业人员,本小程序题库均来自历年真题。 小程序名字:答题优等生 [图片] 小程序技术架构 小程序端未采用第三方框架,使用微信原生开发,未引入任何UI组件库 后端接口采用PHP YII2框架 目前小程序已经实现的功能有: 选择科目在线答题,答题可以选择单题模式还是列表模式 每种考试,可以选择科目,这样保持了考试、科目二级结构 答题历史纪录查询,可以查阅当时做题情况 从目前的功能实现来看,本小程序已完成了一个在线答题小程序的全闭环功能。 未来优化的几个地方在 答题结果页UI优化 答题环节的分享优化 开发小程序过程中遇到的问题 第一个问题:radio取值问题 在单选选择题的时候,用到以下两个表单组件 radio-group https://developers.weixin.qq.com/miniprogram/dev/component/radio-group.html radio https://developers.weixin.qq.com/miniprogram/dev/component/radio.html 默认的radio组件事件 wxml文件 [代码] <radio-group class="radio-group" bindchange="radioChange"> <radio class="radio" wx:for-items="{{items}}" wx:key="name" value="{{item.name}}" checked="{{item.checked}}"> <text>{{item.value}}</text> </radio> </radio-group> [代码] js文件 [代码]Page({ data: { items: [ { name: 'USA', value: '美国' }, { name: 'CHN', value: '中国', checked: 'true' }, { name: 'BRA', value: '巴西' }, { name: 'JPN', value: '日本' }, { name: 'ENG', value: '英国' }, { name: 'FRA', value: '法国' }, ] }, radioChange: function (e) { console.log('radio发生change事件,携带value值为:', e.detail.value) } }) [代码] 没错,用的就是官方示例代码,我们看到在选择的时候,默认e.detail.value,只能取一个字符串,当时遇到的第一个问题就在这里,如果把这整个选项的信息提取出来,能简单的用{{JSON.stringfy(item)}}吗,当然不可以,因为原生小程序本身不支持。 当时在社区查到解决方案具体可以参考 [单选框radio除了可以传value可以传其他的值吗?] https://developers.weixin.qq.com/community/develop/article/doc/0006ce9771c528ed7b89a6f485bc13 方案就是引入wxs,之前看官方文档,每次到这里,因为不知道这是干什么的,以及解决什么问题,现在明白了,想了解更多关于wxs的内容,也请移步下面两篇文档 [微信小程序wxs有什么用?] https://developers.weixin.qq.com/community/develop/article/doc/0008888a01c69872b689448a051013 [小程序里面精度计算问题] https://developers.weixin.qq.com/community/develop/article/doc/0000ae30ea4da802b989540175b013 第二个问题:每次10道题目是如何选择的 在答题的时候,每次会展示10个题目,这10个题目是从当前科目题库中,随机抽取10个,在题库足够大的情况下,基本可以保证每次进来答题的10个题目跟前面的答题都是不一样的。 小程序截图 [图片] [图片] [图片] [图片] [图片] [图片] 代码地址 前端小程序代码,请移步下面 https://gitee.com/xiaofeiyang3369/myexamapp 后端接口用的PHP,代码链接如下,由于我几个小程序都用这个PHP服务,项目代码要远比该小程序的PHP代码要多一些。 https://gitee.com/xiaofeiyang3369/phpapp 如果大家细心,数据库也是可以在线登录的,如果遇到问题,可以微信我。 适用人群 该开源代码适用于小程序初学者,以及大学做在线答题小程序的毕业设计时可以参考。 扫码体验 微信小程序搜索 从业资格题库或者直接扫码 [图片]
2020-06-08 - #小程序云开发挑战赛#-小青考证-做什么都队
项目名称:小青考证 项目介绍 小青考证是一款为需要考证的人提供帮助的小程序,其主要功能为:提供各种证书的题库以供用户刷题,提供笔记功能方便用户随时记笔记,提供错题集和收藏夹方便用户随时查漏补缺 应用场景 小青考证目前提供了六种证书的题库(英语四六级,教师资格证,计算机等级证书,机动车驾驶证,国家统一法律职业资格证,注册会计师证),可供需要考取这些证书的用户去刷题,并且其笔记功能可以方便用户在做题过程中随时记下重要的知识 目标用户 需要考取各种证书的用户 实现思路 本小程序完全基于微信小程序的原生开发,用到了云数据库存储数据,使用云函数和小程序端进行数据交互。首先,该小程序需要获取到用户的登录状态,只有登录之后的用户才可以正常使用该小程序的功能。在服务端为小程序端提供了两个权限为所有用户可读的集合(banks-list和writtenQuestions),其中banks-list是所有题库的简介,writtenQuestions是所有题库的详情,在用户进入小程序的同时,会自动为该用户创建包括我的收藏(collectionForUser),我的错题本(wrongForUser),我的笔记(booksForUser)三个私有集合,以便保存用户的各种操作 项目截图 首页 [图片] 题库界面 [图片] 答题界面 [图片] 记笔记界面 [图片] 个人中心界面 [图片] 查看笔记界面 [图片] 代码展示 [图片][图片][图片] 作品二维码体验 由于项目暂时还未上线,所以只有体验版的,需要申请体验 [图片] 项目不足 由于开发时间较短,且项目需要大量题库的数据,人员有限,在1.0.0版本中无法提供较多的题库供用户使用,且由于添加题库数据需在特定的界面(该界面暂未对用户开放)中操作,所以无法直接提供完整的部署教程 部署说明 请先下载[代码]git[代码],然后CMD执行[代码]git clong[代码]克隆项目到本地 修改 [代码]project.config.json[代码] 中的 appid 替换为你自己的 appid 使用微信开发者工具,导入项目 创建云数据库集合 [代码]bank-status[代码]、[代码]booksForUser[代码]、[代码]collectionForUser[代码]、[代码]writtenBankForUser[代码]、[代码]wrongForUser[代码] (数据库集合权限为“仅创建者可读写”)和[代码]banks-list[代码]、[代码]writtenQuestions[代码]、((数据库集合权限为“所有用户可读”),其中: [代码]banks-list[代码]的集合需要导入文件夹中[代码]miniprogram/data/bankList.json[代码]文件,才能正常使用 [代码]writtenQuestions的[代码]集合需要导入文件夹中[代码]miniprogram/data/writtenQuestions.json[代码]文件,才能正常使用 上传并部署[代码]cloudfunctions[代码]内的所有云函数 开始使用 项目开源地址 https://git.weixin.qq.com/zarek/zarek.git 团队简介 钟卓伦: 广东工业大学信息工程学院大三学生,项目开发人员 许芸: 广东工业大学信息工程学院大三学生,项目UI
2020-09-20