掌握各种Web前端技术,有较强的学习和理解能力,能独立分析问题并提出解决方案。
掌握HTML、CSS、JavaScript编程基本原理与应用, 掌握Vue、React前端框架。
掌握ES6、TypeScript,掌握Git工具使用,掌握前端工程化、组件化开发。
熟练使用主流的UI组件库element-ui、ant design、vant、uview、naive ui等。
掌握常用的Web前端工具和类库Lodash.js、Moment.js、Math.js、day.js等。
有uni-app多端开发经验,可以独立搭建并开发项目,掌握前端国际化(中英维)解决方案。
亿拓智能餐厅收银系统
负责:独立完成前端开发。
运用技术:uni-app、Vue、React、TypeScript、Math.js、Moment.js、Element-UI、Antd等。
项目描述:本系统是一套完整的专为餐饮行业提供智能化服务的点餐收银系统。本系统拥有面向商家和消费者的客户端以及后台管理两大模块,其中客户端拥有商户入驻微信小程序(uni-app)、客蛮多餐厅管理APP3.0(nvue)、客蛮多商家PC后台(查询和打印报表,采用vue-cli+element-ui搭建)、微信扫码点餐H5程序(uni-app)、后厨屏幕显示程序(react+ts+redux+webscokt)等,后台管理拥有亿拓商户管理系统(vue-admin-template),以上程序(公司内部程序除外)都支持多语言(中英维)切换,该系统已经上线并投入10+以上餐厅使用。
问题与解决:
在测试点餐时遇到了JS计算价格小数精度丢失的问题,一开始尝试采用toFixed方法,发现它不会四舍五入而且在Chrome与IE浏览器的兼容上也不一致,后来考虑使用工具类库,通过查阅Math.js官方文档引入并封装成工具文件以方便使用解决该问题。
作为点餐收银服务系统肯定少不了打印小票的功能,还有打印入库单、进货单等,打印有前端本地打印和后端调用云打印机,在PC上调用浏览器的打印功能,定制了打印样式和字体同时支持多语言打印,在移动端采用后端调用云打印机,前端发送订单信息给后端,后端调用云打印机实现打印。
国际化是基本的业务需求,在页面展示包括打印都需要国际化支持,在中英文基础上加入了维吾尔语并加载指定维吾尔语字体。
后厨屏幕显示系统一开始使用ajax轮询的方式刷新数据,后来经过上线测试后发现如果一家店屏幕太多调用过于频繁十家店就更频繁了,之后采用原生webscokt的方式自定义useWebsocket做了心跳机制、断连重连,由前端获取新数据转为后端主动推送新数据给前端,减少不必要的接口带宽资源调用和视图的刷新。