HT

平台前端重构清单

Posted by huangqing on June 12, 2019
  1. 新建一个平台开发使用的通用方法库

    1. 提供一些常用的通用的方法:数组、对象、日期操作

    2. 提取重构XML to JSON 相关方法。

    3. 从平台basepage.js中,提取并重构支持使用JSON动态创建控件的相关方法。

    4. 从平台basepage.js中,提取并重构支持使用JSON动态创建页面相关方法。

    5. 新增支持使用JSON,通过脚本动态创建页面、控件的通用方法。

  2. 调整SetContainerParas、GetContainerParas实现,在内存中存取。

  3. 自动生成易用、描述清晰的通用方法库网页API查询文档。

  4. 调整目录结构,第三方类库重新规整统一调整到Libs文件夹下,并规范命名方式,平台修改过的第三方类库命名为xxxx.xx.ht.js。

  5. 新增HTMapping文件夹,用于集中处理 client-data to server-data 的数据转换操作。提取重构各控件中的数据转换相关操作。

  6. 前后端完全分离解耦,去除后端生成JS代码的方式。比如初始化时的全局变量、用户登录的代码。【需要后端配合调整】

  7. 重构用户认证方式,使用令牌(秘钥或三方认证)的方式执行访问服务请求。现在需要传递一大堆的用户信息,非常不安全。【需要后端配合调整】

  8. 增强对异步请求方式的支持,采用Promise等链式调用的方式编写执行代码,避免噩梦般的回调金字塔,让代码清晰且易维护。

  9. 完全禁止ajax同步请求

  10. 完全禁止使用eval动态编译函数,此函数及其消耗内存且执行效率低,特别是平台的菜单功能。【需要后端配合调整】

  11. 废除.aspx页面,使用html

  12. 后端配合调整,不直接生成js变量及脚本文件,使用正常json数据交互的模式

  13. 重构访问服务器数据响应方式,使用正常的200状态服务响应。现在通过响应服务器返回的500服务异常状态进行处理【需要后端配合调整】。

  14. 重构平台逻辑,全部使用异步调用的方式请求数据,避免浏览器阻塞造成无法响应用户的界面操作。【需要后端配合调整】

  15. 重新总结项目对列表的使用情况,规划开发或重构列表控件。

  16. 重构页面参数的保存方式。现在序列化后存储在HTML页面中,造成页面数据过多,影响性能。

  17. 在适当的时机对平台前后端进行分库,完全解耦。

  18. 废除OCX的使用,放弃IE老版本的支持(最新版IE已经使用Chromium作为内核),使用现代浏览器。

  19. 使用适合前端的开发环境、工作流程及构建、编辑、打包工具。如使用VSCode、Git、Node.js、Gulp、NPM、TypeScript等。

    1. 开放网络

    2. 调整开发工具

    3. 调整、架设Git版本控制系统

    4. 调整开发流程

    5. 平台前后端已经分离解耦

    6. 学习、培训

  20. 使用Stylus,重构皮肤样式生成,自动化实现。

  21. 使用gulp.spritesmith,自动化生成png雪碧图

  22. 使用gulp-iconfont,使用svg制作字体图标,应用于纯色图片