前言
本来写了挺多字的了,结果电脑一休眠,就没保存,以后要挣钱买个MBP。
从7月底到现在,断断续续学了一段时间的react,做个阶段性的笔记方便回顾,以后回来炒冷饭。
7月底是领导给的一个任务,要把公司现有的系统都做前后端分离,从react和vue中选一个合适的框架,重构现有的前端代码,需要从头搭建一个开发的脚手架项目,之前完全没有接触过前端的东西,而这些年前端的百花齐放,加大了这次任务的难度,但是没什么办法,干就是了。
公司现有的项目都是一体化的,后端独立一个web项目,放JSP和JS,以及一些静态的HTML和CSS文件,历史久远,在改成HTML5的过程中,发现太多问题,跨域,JS引入,要完全改成H5,工作量大且维护性不好,所以反正要重写,不如找个新的JS框架来重写现有的系统。
主要困难有:
- JS代码量激增:原来的页面是通过后台JSP,把数据渲染到JSP页面,然后传递给前端,改造成HTML5之后,所有数据都需要通过Ajax请求后端数据,通过jquery选择器,添加到HTML中,代码耦合度极高,JS代码量大量增加。
- Ajax回调地狱:异步请求的数据,需要通过回调函数才能正常渲染到页面的指定位置,页面逻辑一旦复杂,会陷入回调地狱,导致各种undefined出现。
- 样式杂乱:原项目是基于部分easyui和部分原生JS进行样式书写,在改造成H5之后如果沿用原来的样式,出现了很多样式问题,而且每个页面的出现的问题不一致,每个页面都有样式要调整,增加了很大工作量。
- 框架定制:由于引入了token验证机制(分布式移除了session),使用到easyui的表单或者jquery的表单提交的封装函数,都要进行定制,不具备比较好的维护性。
- 优化问题:如果都使用原生的JS和Jquery库,当前的改造项目,会存在优化难