项目构建:参与项目初始开发到上线。考虑电商网站规模,拓展功能模块较多,项目构建以PHP的MVC架构为主,前端采用多页面应用方式,前端工程化采用Vue+Webpack+Babel+Es6+Sass+gulp方式。框架选择:Vue+jQuery+Bootsrap的Datetimpicker+swipper.js+(paypal,striper等三方支付库)
功能实现:
1.整站上,采用响应式开发,减少了移动端适配的研发成本。
2.整站UI风格化,实现整站基础配套组件。业务样式使用Bem+Emmet+Sass(模块化开发),业务功能使用面向对象的函数式编程/Vue全局组件注册,减少了代码耦合,增加功能模块的复用。
3.代码优化上,使用Css3的Animation/Transition/Transform手写动画;使用防抖,节流减少HTTP高并发请求;使用promise/async异步组织代码,解决支付业务的多回调问题;使用了图片懒加载、精灵图,减少初始化页面绘制时间;
4.代码加载优化上,使用preload和prefetch;远程CDN、加速节点资源静态化;三方支付配合交互操作,实现动态引入;JS初始化闲置资源使用defer/async引入;webpack对JS的压缩和混淆;webpack的提取Chunck按需引入,减少代码体积;
5.兼容上,配合Autofixer,HTML采用高兼容性布局方式,CSS使用渐进增强写法,兼容IE9、QQ、360等主流浏览器。
6.发票功能,使用html2canvas.js+pdf.js,实现将html转为pdf