本文上篇为《学习题专栏》起航——五分钟搭建属于你自己的刷题网站,推荐花费五分钟看完,完成刷题库的搭建~上一篇《刷题专栏》起航——五分钟搭建自己的刷题库介绍了刷题库的搭建,但是只有刷题库是不够的,我们的目标是借助刷题库更好的学习算法,如果大家可以通过网站浏览自己的刷题记录,巩固学习效果会更加方便~1.最简单的网站建设目前,我们项目的leetcode文件夹里有一千多个Leetcode问题Markdown文件准备好了:经过一些搜索ng,发现VuePress可以快速帮我们完成网站的搭建,马上按照官方说明开始运行:cdleetcode-js#或者你的仓库名echo'#HelloVuePress'>leetcode/README.mdnpmi-Dvuepres#yarnadd-Dvuepress然后打开package.json文件,在scripts部分插入:然后在命令行运行npmrundocs:dev或者yarndocs:dev,等待命令运行即可seethecommandlineforlocaldebugging链接:打开链接,可以看到网站上出现了刚刚用命令行生成的README.md文件,说明VuePress已经解析了我们leetcode文件夹中的markdown,生成为网站资源:那我们就可以在网站上展示了有没有在网上看到leetcode文件夹里的刷题记录?答案是可以的~只需要找到一个文件名作为域名的路径即可~比如我现在找到第一题“1_两个数的和”,放在“localhost:8080”后面,结果如下如下:网站这个话题已经展示成功了~还有一个额外的小功能,只要在右上角输入关键词,它就会自动帮你找到相关的文档:2.最简单的话题列表搭建网站搭建完成后,如果你稍微用一下,你会发现它不起作用。leetcode有一个所有可以点进去的题的列表,我们网站没有这个功能,找题还得输入一次=。=别着急,记得我刚刚用README.md生成了一个HelloVuePress主页,我们可以在这里写一个README.md主题列表,这个列表有两个要求:按顺序显示所有主题每个问题都可以跳转到Leetcode特定问题位置和我的问题解决方案网页。之前我们制作题刷库的时候这个信息已经存在缓存文件/cache/problems.json中了,现在我们只需要读取即可~Continue要做两件事,对应上面两个需求:获取从缓存文件中获取topic信息生成对应的README.md(topic列表格式暂定为“title&link+difficulty+solution&link”)简单设计然后开始实际操作,在dev文件夹下创建文件generateReadme.js,然后开始写逻辑:主要逻辑比较简单,基本:取出数据,然后以markdown形式填写字符串模板。然后在package.json中添加命令build-readme如下:然后打开一个新终端,运行npmrunbuild-readme或者yarnbuild-readme,结果如下:看原页面,很简单漂亮的Leetcode题目列表页面~题目列表生成脚本位置在:https://github.com/Nodreame/leetcode-js/blob/master/dev/generateReadme.jsP.S。本来打算把打包和CI一起写的,没想到leetcode题太多导致VuepressSSR打包失败。而我也没有找到CSR的打包方法,只能等我处理完了再整理最后发表的文章。o(╥﹏╥)o欢迎拍砖,觉得还可以的话,欢迎点赞收藏~新公众号:《无梦奇遇记》欢迎关注(也可以搜索Nodreame~)旅程还在继续
