开源在线答题小程序 | 您所在的位置:网站首页 › 有没有在线答题的小程序 › 开源在线答题小程序 |
项目概述
本文介绍的是一款能在小程序上刷题的工具类小程序,目前主要面向的用户是证券从业人员、基金从业人员,本小程序题库均来自历年真题。 小程序名字:答题优等生 小程序技术架构小程序端未采用第三方框架,使用微信原生开发,未引入任何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文件 {{item.value}}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 如果大家细心,数据库也是可以在线登录的,如果遇到问题,可以微信我。 适用人群该开源代码适用于小程序初学者,以及大学做在线答题小程序的毕业设计时可以参考。 扫码体验微信小程序搜索 从业资格题库或者直接扫码 |
CopyRight 2018-2019 实验室设备网 版权所有 |