# 英语词汇量测试小程序 **Repository Path**: junjiangLi/quick-test ## Basic Information - **Project Name**: 英语词汇量测试小程序 - **Description**: 使用原生小程序+Vant开发的英语词汇量测试小程序 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 1 - **Created**: 2021-06-09 - **Last Updated**: 2025-11-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 英语词汇量测试小程序 ### 1.项目简介 后端 **[词库](https://gitee.com/tony_Tony/dict/tree/master)** 源于开源的词库文档,利用微信小程序的云开发功能管理后台,前端基于原生小程序实现 微信小程序的云开发功能更多请参考: **[云开发文档](https://developers.weixin.qq.com/miniprogram/dev/wxcloud/basis/getting-started.html)** 项目已发布,微信搜索小程序**快测词汇**或打开微信扫一扫扫下图码即可体验: ![小程序码](https://images.gitee.com/uploads/images/2021/0801/231134_d89c4aaf_8386940.jpeg "gh_1fb383aa4c46_258.jpg") **此项目仅作学习与交流** ##### 1.1首页 包含显示用户信息、选择测试题库、选择测试题数等功能 | 1![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/231637_31169eff_8386940.png "首页1.png") | 2![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/231651_36f2a422_8386940.png "首页2.png") | |---|---| ##### 1.2题库页面 包含随机选项、显示当前序数、显示当前进度等功能 | 1![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/232255_b17454ab_8386940.png "题库1.png") | 2![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/232304_da2b60b5_8386940.png "题库2.png") | 3![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/232311_b89b1833_8386940.png "题库3.png") | |---|---|---| ##### 1.3总结页面 包含统计词汇量、统计准确率等功能 | ![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/232619_9b750773_8386940.png "总结.png") | |--| ### 2.项目难点 ##### 2.1随机选项的产生 这里通过每次下一题时,即调用一个随机函数,产生一个范围在[0~3]之间的随机数组,数字的顺序即决定了所提供的4个选项答案出现的顺序(四个选项答案获取方式固定,但选项顺序由产生的随机数组决定),从而产生了随机选项,每次正确答案位置是随机的。 这里给出部分代码,具体请参考完整项目所示 ``` //产生一个范围在【0-3】且每个都出现且不重的数组 makelist(){ let rand = [] rand[0] = (Math.random() * 3).toFixed(0) rand[1] = (Math.random() * 3).toFixed(0) do{ rand[1] = (Math.random() * 3).toFixed(0) }while(rand[1] == rand[0]) rand[2] = (Math.random() * 3).toFixed(0) do{ rand[2] =(Math.random() * 3).toFixed(0) }while(rand[2] == rand[1] || rand[2] == rand[0]) rand[3] = (Math.random() * 3).toFixed(0) do{ rand[3] =(Math.random() * 3).toFixed(0) }while((rand[3] == rand[2] || rand[3] == rand[1] || rand[3] == rand[0])) this.setData({ rands: rand }) }, ``` ``` let Amean = res.list[this.data.rands[0]].content.word.content.trans[0].tranCn let Bmean = res.list[this.data.rands[1]].content.word.content.trans[0].tranCn let Cmean = res.list[this.data.rands[2]].content.word.content.trans[0].tranCn let Dmean = res.list[this.data.rands[3]].content.word.content.trans[0].tranCn ``` ### 3.项目运行 由于使用了小程序的云开发功能,词库数据保存在云开发——数据库中,要先保存词库数据,再跑项目 1.下载项目ZIP,并解压缩 2.打开微信开发工具,使用微信开发工具打开解压后的项目文件夹 3.点击微信开发工具左上角云开发按钮,进入云开发控制台 | ![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/235148_b2acbd0e_8386940.png "步棸3.png") | |--| 4.在云开发控制台中选择数据库栏,新建如下四个集合(名称必须一样) | ![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/235540_d07e479c_8386940.png "步骤4.png") | |--| 5.在新建的集合中选择导入数据库,选择的文件是项目文件夹中的words文件夹中的4个JSON文件,并按相同的文件名对应导入 | ![输入图片说明](https://images.gitee.com/uploads/images/2021/0801/235932_df60c44d_8386940.png "步骤5.png") | |--| 6.选择数据权限栏,将数据权限改为第一个,到此后台部分处理完毕 | ![输入图片说明](https://images.gitee.com/uploads/images/2021/0802/000240_4d850124_8386940.png "步骤六.png") | |--| 7.新建终端,安装项目依赖: ``` yarn ``` 8.至此,即可在左边可视栏体验效果