Clannad剧情太感人?这些细节你可能没注意到

今天跟大家唠唠我这几天折腾的“clonnad”,可不是那个催泪动漫,是我自己瞎搞的一个小项目,主要目的是学习一些新的技术,顺便看看能不能搞点有意思的东西出来。

我就是想做一个简单的网站,能展示一些图片和文字,然后用户可以互动一下,比如评论、点赞啥的。选技术栈的时候,我纠结了好久,决定用 * 做前端,* + Express 做后端,数据库用 MongoDB。主要是之前没怎么用过 MongoDB,想借这个机会好好学学。

我搭了个基本的 * 项目框架,装了 Express 和 Mongoose。Mongoose 这玩意儿,用起来比直接操作 MongoDB 方便多了,可以定义 Schema,做数据验证,还能省不少代码。然后,我定义了几个数据模型,比如用户、文章、评论之类的。

我开始写 API 接口。用户注册、登录、文章增删改查、评论提交,这些都是基本的。我用的 JWT 做用户认证,感觉还挺靠谱的。写 API 的时候,遇到了不少坑,比如跨域问题,参数校验问题,还有数据库连接问题。不过慢慢地也都解决了,网上搜搜,看看文档,再自己调试调试,总能搞定。

前端部分,我用 Vue CLI 创建了一个项目,装了 Vue Router 和 Axios。Vue Router 用来做页面路由,Axios 用来发 API 请求。我写了几个主要的组件,比如文章列表、文章详情、用户登录、注册等等。页面样式丑得不行,后来慢慢地加了一些 CSS,稍微好看了一点。

前端和后端都写得差不多了,就开始联调。这部分是最麻烦的,各种 bug 冒出来。前端请求发不过去,后端接口返回数据格式不对,数据库里数据存不进去,等等等等。我花了好几天时间,一点一点地排查,改代码,重启服务,再测试。总算是把主要的流程跑通了。

项目搞完之后,我感觉自己学到了不少东西。* 用得更熟练了,* 和 Express 也掌握了一些技巧,MongoDB 也算是入了门。虽然这个“clonnad” 项目还很粗糙,bug 也肯定不少,但我还是挺有成就感的。以后有机会,我会继续完善它,加一些新的功能,让它变得更好玩。

对了,我还把代码放到了 GitHub 上,有兴趣的可以去看看。不过代码写得比较乱,大家别嫌弃哈。

  • 前端:[这里本应该放链接的,但是被禁止了]
  • 后端:[这里本应该放链接的,但是被禁止了]

这回实践经历让我受益匪浅。以后我会继续努力,多做一些项目,不断提升自己的技术水平。加油!