高后果区项目总结

73 阅读5分钟

前言

去年的九月份被外派去了一家专门做石油天然气业务的公司进行驻场开发,虽然负责的是比较基础的工作,但是所在公司的前端负责人还是或多或少的影响了我的开发习惯.也学习了一些东西.

学到了什么

git流程

这家公司的git流程是

  1. 主项目的仓库派生出来自己的仓库
  2. git clone 自己仓库的代码
  3. 添加主项目的远程仓库地址.
  4. 添加一个主项目的远程地址
  5. 在划定的分支上进行开发,提交到自己的仓库
  6. 合并代码到主项目之前拉取主项目的代码解决冲突保证最新
  7. 然后提交到自己的个人仓库中.
  8. 然后在gitlab进行合并的请求. 流程基本上是git flow的流程www.jianshu.com/p/d0cf8c430… 这部分我在自己的git总结中也会提到.

项目开发规范

项目的新增编辑基本上是单开一个路由进行处理,这时候文件的等级一般会跟index.vue平级,命名要统一.组件可以放入页面文件夹的组件components,公共组件就放到公共的components. 还有要注意事件处理的命名要统一,要一眼就看出来是处理事件.

Debugger

之前一直使用log去调试代码,结果到这边之后发现大哥会用Debugger去调试.优点很多比如可以看见更多的信息,可以一步一步查看代码的流程.这点我之前是不会的不过最近也算是学习到了.还有更多的调试技巧等待发掘.准备后续购入神说要有光的调试小册学习怎么直接在vscode上调试.

上传下载

这部分也一直是我的薄弱项,最后在去年10月份左右又去看了个视频算是入门了吧(之前也看过结果看不懂,教程还是要找通俗易懂的).感想就是还是要懂基本的input标签的几个属性和用js操作一下原生的上传下载预览这些操作,才能更好的理解.算是这次外派得到的一些收获之一.

业务组件封装

这次项目尝试使用了一些json配置的方式去处理一些表单,结果喜忧参半吧.首先就是写好一次后配置起来变得十分的方便,我并未封装组件而是复制粘贴的方式去应用到各个页面(害怕后续业务有变更不好修改).结果呢就是一边写一边改去适应业务的需要,然后发现有些联动的需求,比如a表单项更新b表单项要有对应处理的时候change事件不好去处理,需要有个中介函数去判断传值然后转发.我觉得优点不太优雅就改用了监听器.跟大佬的交流中大佬不建议我去这样二次封装觉得会被业务的变更去拖累,我觉得也有道理.但是现在比较多的模板都使用了类似的配置方式,空了还是要去了解一下.至少要知道怎么去修改.还有插槽的使用非常多,这部分算是我比较薄弱的部分. 还有就是业务组件是否要学习react进行模板跟处理分离呢?这样就可以一个渲染组件去收集数据,然后两个页面去处理这个表单的数据再也不用写一堆判断了,不过这样要涉及到传进去的值直接被渲染组件修改的问题,要怎么避免单向数据流被改变要想一想.

无泄漏项目

这是一个Vue3的项目,说实话除了对echarts的配置项了解多一点外好像没有太多的学习到的东西,遇见的几个坑也记不清了应该不是什么大问题,不过这个项目的封装程度要好得多基本上自己没怎么去写,就是移动一下组件的位置.这是一个庞大的系统,利用请求头去区分页面直接返回不同的请求也是我第一次见,后续可以研究下代码.

其他

有一个有意思的需求就是下拉事件的拦截处理,看了一圈结果发现直接把v-model拆开用原生方式去处理就可以很简单的进行下拉选择器的下拉拦截操作.还有json配置表单这个,最近看了一下应该有不少更完善的方法,不过这次尝试使用也算让我带着问题去学习了.

字典

,这个是接触若依才接触到的东西,虽然这个名词在我接触python的时候就有过了解(就是js的对象).下拉框的取值一直都是问题,需要调用不同的接口,感觉还是挺烦人的.如果有一个接口可以通过不同的传值获取不同的数据就可以避免多个接口去请求不同的下拉值.外派的这个公司项目提供的方式我觉得不好调试,感觉可以直接引入处理.后续可以向后端提出这种解决方案以减轻自己的工作量.