我写了一个与后端交互的线上笔记

184 阅读3分钟

粗略总结一下历程

项目预览

与后端约定接口

接口文档规范

这是一个前后端分离的项目,那么需要与后端约定好接口,这是非常重要的事,在实际开发中,交流成本往往是很高的

如:

  • 我们需要的路由是怎样的
  • 类型是怎样的
  • 传递的参数和结果是怎样的
  • 等等...

使用 vue-cli 搭建初始项目

这里我是看官方文档,自己按照例子跑一跑了解这是个什么东西

初始 vue-router

这里我也是看一遍文档,然后动手尝试

样式&组件&调试

通过上面,知道了如何去新增一个组件,如何修改样式,写模板,使用了 Chrome 插件:Vue.js devtools 进行调试,查看组件的数据

接口封装

image.png

这个项目用了很多接口,我不想把这么多的接口出现在业务代码,这样会使后期维护很头疼,所以把这些接口进行了封装。

先封装了一个最底层的接口:用于去发送、获取请求

之后根据每一个模块,去设计相对应的接口

这样接口万一变了,业务代码完全不用动

需求完善

做到这个时候,已经有一个粗糙的小 demo 出来了,那么作为前端,我们应该完善各种细节。

ui、交互、其他乱七八糟的东西...

笔记本列表页面

image.png

到了这里,已经涉及到了很完善的增删改查

这里会有很多与用户交互的东西,比如提示弹窗,我使用了 element-ui

引入 element-ui

这个很简单,看官方文档就是最快最简单的,有了这个库,我可以很快的实现出各种交互

但这个我也是写了 apis,让业务代码去调用,不然代码看起来太臃肿了

路由

image.png

随着不断完善,到了笔记详情页面

但这里出了问题:之前按照我的想法去定了一个路由,一开始不能够立马想到一整个项目需要注意的地方,当做到这,发现这种写法很难处理,又来就做了简化

笔记本详情页

接触到了父子组件

需要有对应的数据传递,发现数据传递是一个恶心的东西

下面就使用了 Vuex

Vuex

我引入了 Vuex - 状态管理

我把这些数据都不放到对应的模块下,我把共用的数据都抽出来,放在一个共用的池子里,所有人要数据,都可以去这个池子拿

  • Vuex 里有数据、改变数据的东西、方法、还有一些异步的操作

这样子,业务代码一下子减少了一般以上

  • state:原始的数据

  • getters:根据原始的数据,进行一个扩展

  • mutations:修改数据

  • actions:一些异步操作

回收站页面

有了以上的基础,很快的就完成了回收站页面

产品的完善

到了现在,会发现很多需要优化的东西,我自己测试各种场景,感受体验的感觉,不断完善

以上是我对这个项目简略的复盘,本人学前端半年,不喜勿喷