@zChange
2018-03-01T03:46:10.000000Z
字数 640
阅读 181
现在项目中的劣势
目录结构不清晰

没有设计模式,业务逻辑层,服务层混杂在一起,难以维护

项目中用到的第三方插件没有管理,相互之间可能有依赖,会出现不可意料的bug

需要操作dom

前端无路由,直接访问html文件可访问。


代码无压缩,直接对外暴露,带来性能及安全性问题。


es6新特性无法采用。(不兼容问题)
项目中重复代码多,全局变量多,注释少,代码不规范,可读性差。
无组件化思想,相似组件无法复用。
数据格式不统一,错误提示无统一处理,代码风格不统一,协同合作不方便,js太灵活,大项目下无提示只能靠注释,语法错只能在浏览器中知道错误
优势
- 简单容易理解
- 方便操作dom
- 对开发人员要求较低
引入框架改进
angular
目录结构清晰明了,提高项目的可维护性

组件化思想,提高复用率。降低项目中的耦合。


采用npm管理包文件,方便管理升级包(方便管理开发环境和线上环境)


webpack打包压缩,线上环境代码打包压缩,减少代码体积,提高代码安全性。

angular路由(路由拦截器),无权限或不存在地址展示相应页面,用户体验好


风格统一,提高组员协同合作。angular官方有统一的代码风格。

双向绑定无需操作dom

无脑使用es6及es7,ts会编译成es5
采用ts开发,强类型降低出错,项目庞大后维护方便(智能提示)

预编译,语法错误直接提示,无需运行(提高开发效率)。
(全局路由拦截器,ajax拦截器,提供的生命周期方便什么时候做什么,路由支持懒加载,提高性能。)

所需要解决的问题