用Vue写的高效背单词App,方法来自《17天搞定GRE单词》
作者正在计划用Vue3+TS重构本项目
一款用Vue写的高效率在线背单词WebApp,经作者实践两周可背完1700个GRE单词。
写这个App是因为作者用Excel背GRE单词时发现效率虽高,但很难坚持,因此萌生了自己整合各路快速记忆方法写个背单词App的想法,并将其实现
项目参考了杨鹏的《17天搞定GRE单词》和广泛流传的Excel背单词法,以及艾宾斯浩记忆周期,用JS实现了背单词的逻辑,基于Promise简单封装了一下indexDB,用在本地保存背单词的进度
项目实例词库是某知名机构总结的最近几年真题词频最高的1700词,作者靠它抱佛脚两周考上了320
本项目尤其适合做为Excel背单词法的替代方案,尤其适合GRE这种考试,适合需要短期记忆大量单词的场景
因为是备考GRE时在空余时间写的,项目一些地方的代码复用写的比较糟糕,也未考虑性能优化。
都是本地I/O,内存啥的肯定够用,所以影响不大能用就行
点此进入本项目的demo页面(甚至可以直接在这背GRE单词)
如果觉得本项目有帮助记得给个star~
因为项目使用了indexDB这种浏览器本地数据库来储存数据, 不同机器间学习数据不互通。但又因为在本地就有用户系统, 之后能很方便的把数据接上云端。
之所以使用indexDB是因为学习进度需要被长久保存, 在Web端能满足需求的只有localStorage和indexDB。 但这种需要储存大量数据的应用场景不适合使用localStorage,因此最后采用了indexDB。
因为indexDB和mongoDB有很多的相似处,本项目在未来可以很方便的切换为云端储存。
Vue + Vuex + Vue-router + indexDB
本项目核心是两个封装好的api,位于/src/api
目录下,剩余的都是在一般的vue项目里很常见的代码,花一点时间就能看懂故不多介绍。
# 下载项目到本地
git clone https://github.com/chenstarx/vue-vocabulary
# 进入项目文件夹
cd vue-vocabulary
# 安装npm依赖
npm install
# 开发模式运行
npm run serve