Q4要来了,我来这家公司已经一个季度了,通过对公司前端框架的整体认识,对业务的一些认识,发现,这些东西也都是可以重构,无论是v2,还是v3的代码。
首先就要那后台管理来开刀来,现有的技术框架就是php模版+jquery+jquery插件库,大杂烩什么都有,简单的说就是jquery技术栈,jquery灵活,但是代码量太大,没有太深入的思想,回调,dom操作,表单校验正则,dialog框,蒙层,表格编辑,查询分页,查询条件筛选,日期计算,无非就是这些东西。但是使用jquery的话,很坑,尤其是联动效果很多的时候就更坑了。我实在忍受不了,普普通通的一个表单,要写上1000行以上的代码。
进入重构,首先的问题是,后端渲染,为什么要做后端渲染,因为有时候会做google统计,seo优化,之类的,必须用后端渲染才行,普通的spa就不行了,而且语言包那一块需要去服务器拉去数据后才能生成文件,必须有后端服务做支撑,考虑这些,然后就入了nuxtjs的坑,nuxt是一种vue后端渲染方案,首先搭了一个nuxt服务,然后使用element,把menu组件改成了侧边栏,然后看了一下路由配置发现,这个路由就是根据文件的目录来判断,和php,java有的一拼,几乎是一样的,也支持动态路由,可匹配等,然后里面有server.js,client.js,分别打包客户端和服务端的代码,首页采用服务端渲染,其他页面则采用客户端渲染。
但是这样搭载过之后,我发现,后台管理系统里会有一些统计数据的工具,这时候可能会引入vue的图标框架,但是我不能确定vue的图表插件能否支持ssr
纠结之中我还是放弃了,如果以后有小的项目可以试一下。这次就别这样了,进度也要跟的上,况且都是内部人员使用的话对seo要求也不高,就选用spa,然后折腾了一下,发现vue-element-admin这个架口碑不错,进去看了一些,图标,表格,校验,菜单自适应,该有的都有,然后。。。。遇到了一个问题,没有服务端,语言包咋搞,总不能在前端代码里写吧,那就搭载一个子项目,专门搞权限,和语言包就行了,完美。