有一些网站初期比较快,但是随着量的积累,BUG越来越多,速度也越来越慢
主要体现在
1.css代码迭代更新
2.ui组件代码的引用
3.第三方插件的不合理使用
结果:
导致资源下载体量不断增加
工程角度 最终目的--消灭冗余代码
1.单从一个页面的加载来说,他需要以下资源:
① 框架MVC骨架模块&框架级别CSS
② UI组件(header组件、日历、弹出层、消息框......)
③ 业务HTML骨架
④ 业务CSS
⑤ 业务Javascript代码
⑥ 服务接口服务
2.UI组件本身包括完整的HTML&CSS&Javascript,所以就UI部分来说容易导致两个工程化问题:
① 升级产生代码冗余
② 对外接口变化导致业务升级需要额外开发
3.项目之初,分层较好的团队会有一个公共的CSS文件(main.css),
一个业务CSS文件,main.css包含公共的CSS,并且会包含所有的UI的样式
所以比较好的做法是,main.css只包含最核心的样式,
理想情况是什么业务样式功能皆不要提供,
各个UI组件的样式打包至UI中按需加载:
4.按照上述的做法现在的加载规则是
① 公共样式文件
② 框架文件,业务入口文件
③ 入口文件,异步加载业务模块,模块内再异步加载其它资源
主要体现在
1.css代码迭代更新
2.ui组件代码的引用
3.第三方插件的不合理使用
结果:
导致资源下载体量不断增加
工程角度 最终目的--消灭冗余代码
1.单从一个页面的加载来说,他需要以下资源:
① 框架MVC骨架模块&框架级别CSS
② UI组件(header组件、日历、弹出层、消息框......)
③ 业务HTML骨架
④ 业务CSS
⑤ 业务Javascript代码
⑥ 服务接口服务
2.UI组件本身包括完整的HTML&CSS&Javascript,所以就UI部分来说容易导致两个工程化问题:
① 升级产生代码冗余
② 对外接口变化导致业务升级需要额外开发
3.项目之初,分层较好的团队会有一个公共的CSS文件(main.css),
一个业务CSS文件,main.css包含公共的CSS,并且会包含所有的UI的样式
所以比较好的做法是,main.css只包含最核心的样式,
理想情况是什么业务样式功能皆不要提供,
各个UI组件的样式打包至UI中按需加载:
4.按照上述的做法现在的加载规则是
① 公共样式文件
② 框架文件,业务入口文件
③ 入口文件,异步加载业务模块,模块内再异步加载其它资源