安州市市场监督一体化平台_项目总结

140 阅读3分钟

这是自己第一次参与原生微信小程序的开发,以下列出自己对项目的总结。

项目介绍

该系统为绵阳市安州市市政府开发,用于管理市场监督局案件办理,具有政策规范,企业认证,消息管理, 意见征集和积分兑换等功能。

技术栈

微信小程序(原生 + Vant)后台管理(React + Antd Pro)

小程序

  • 用户登录时,信息获取和判断的逻辑处理

用户登录时序图如下所示:

  • 完善列表分页部分加载状态判定
  • 支持按照文章标签搜索,并将搜索结果实时渲染
  • 征集调查和咨询建议模块的编写
  • 后期项目部署与维护

后台

  • 负责政策规范、消费警示和曝光管理模块业务逻辑编写,数据处理和布局
  • 使用策略模式实现不同 API 对应同一页面
  • 使用DvaJS的subscription实现路由控制不同页面数据获取和现实
  • 使用Promise解决请求先后次序问题

使用Promise解决请求先后次序问题

  • 完成项目线上部署和维护,解决页面刷新404错误

Nginx部署Web项目并解决刷新出现404bug

所遇问题

编写后台管理时,由于 政策规范、消费警示和曝光管理三个模块的数据格式和操作几乎一模一样,于是将它们写在同一个页面,需要做的就是根据不同的状态判断是哪个模块,并将对应数据显示出来,这时需要处理三个路由对应同一页面的状态切换和数据获取问题,详情可移步此篇博客。React使用策略模式实现不同API对应同一路由

个人收获

  • 画图的重要性,遇到一个新的需求,第一件事不是敲代码而是画流程图,理清思路再动手,效果会好很多,不然直接捣鼓代码,可能会弄成一团乱麻。
  • 需要及时对开发过程所遇的问题进行记录和总结
  • 能复用的函数或模块尽量抽成一个组件,提高复用性和可移植性
  • 开发过程会遇到各种问题,需要及时与后端人员或项目经理反馈,锻炼了自己与人沟通并及时有效解决问题的能力。
  • React生命周期有了更清晰的认知
  • 参与了从需求评审、开发联调、到测试修复的完整开发流程,培养了自己团队合作的意识,在团队交流中学习了产品思想和对技术选型的思考
  • 需求开发中增强了自己讲业务落地为代码的能力,强化对代码细节的把控,在开发时注重边界条件和特殊情况的处理
  • 增强代码规范意识和git协作能力