工作项目

项目名称:xAlert 网络安全管理平台

产品简介:一款基于网络流量的安全事件管理平台(SIEM),实现了资产识别、流量分析、安全事件报警的安全数据可视化等功能,主要应用于对网络安全敏感的业务场景,提供安全监控及预警功能。
工作内容

  1. 封装通用组件;约定组件编码规范,实现展示与业务分离。
  2. 通过mixin方式封装Echart.js所生成实例的公共属性和方法,使其混入图表组件。
  3. 使用D3.js实现复杂的图表和特效,如分组节点与流量的网络拓扑图。
  4. 结合vue-grid-layout,实现用户自定义拖拽图表布局。
  5. 约定前后端异常规范,基于axios的拦截属性实现统一的异常拦截处理。

解读
1、像是表格组件;列表除了展示之外,还有一些按钮功能,之前都是一个table一个table复制再写,因为业务和逻辑是绑死的,连最基本增删改查的方式都是不一样。
后来尝试展示与业务,发现一个问题那就是子组件需要emit给父组件,但子组件不可能只有CRUD四个事件。
那么接下来,表格中所有的事件都是父组件,子组件只需要负责emit出去就行。
父组件控制tableColum、tableData、operate

2、抽离公共逻辑,特别是触发相关的(监听事件和生命周期);mixin而言,我会尽量抽离独立的业务逻辑。
包括监听窗口resize事件、option配置修改,mounted和beforeDestory时绘制和销毁,还有loading。
但是,像一些公共的data和computed,维护成本有些高。
3、
4、
5、前后端异常规范约定。后端是基于RESTFul API,error_code,msg,特别是数组的返回,即便是查不到也要返回[]。
并且各个异常按照error_code分类,判断某个范围内的error_code是不应该被用户知道的。
还有token过期,判断返回的error_code = 1002,清除本地缓存中的token,并刷新页面。(刷新页面就会触发路由的权限判断。)

项目名称:ceres-admin基础后台集成方案
产品简介:一款研发团队的基础后台集成方案。该方案基于Vue开发,包含内容管理系统(CMS),并提供多种布局方式和主题,rbac权限管理(涵盖接口、路由、组件、按钮等级别权限),高复用表单组件、数据可视化等等功能,并制定ESLint、CSS样式分层、commitmessage等多个开发规范,用于快速构建管理平台。
工作内容

  1. 负责rbac权限管理的逻辑设计与实现;增加导航菜单管理,字典管理,参数管理,通知管理,日志管理等。
  2. 搭建脚手架,快速生产前端工程。
  3. 设计文件管理系统,实现树状管理、预览模式等,支持服务器存储和七牛云存储。
  4. 设计文章管理系统,使用文件管理系统结合Ueditor,取代Ueditor的上传添加方式。
  5. 负责核心组件库的设计,包括容器组件、基础图表组件、基础表单组件等。
  6. 引入CSS样式分层思想,优化CSS管理,提升样式复用性。
  7. 设计可视化大屏基础模版。

解读
1、每次写项目,后端的权限都是写死在代码层面的;那我就跟后端将
2、
3、
4、
5、
6、整合ITCSS的分层思想,
7、

项目名称:xEdu智慧云屏

产品简介:一款机构品牌的展示与宣传系统。为机构旗下的各门店提供自定义的H5店铺页面、模版系统、海报推送功能、预约管理、屏机心跳监测等等功能,主要协助品牌门店在屏机端和移动端的自身宣传和活动推广。
工作内容
1.参与产品初稿设计,拆分业务模块,设计数据库。
2.实现页面专题制作平台,以数据驱动页面的方式实现自定义页面编辑,支持拖拽6种模块(轮播图、导航栏、分类导航、图片、视频、富文本)。
3.使用canvas实现店铺页面的预览截图。
4.实现多种类型海报(含视频)的轮播组件。
5.应用postcss-plugin-px2rem插件,实现屏机端(立式电视)和移动端多端基于基准样式实现自适应。
解读
1、
2、
3、
4、
5、
6、之前的api请求做过适当的封装。将业务层迁移到前端的model层,在这里对数据做整合。
7、前后端驼峰和下划线的转义

因为我喜欢做事喜欢往前推,所以老板就让我做开发主管。

开源项目

1、mini-shop-server
我因为对后端开始接触,本身就会用python,发现网上用Flask写rbac权限管理没人写过。

  • 多种权限控制的写法
  • 开始接触到AOP的参数校验层、异常统一处理层
  • 多个层级的Model模型JSON序列化控制
  • 小程序的登录机制

结合装饰器除了给一个对象或者方法添加新功能,装饰器还能通过装饰其他补充自身的功能;E.g: 项目初始化的时候,权限控制的逻辑。

离职原因

技术场景缺少深挖的