Appearance
shared共享包
背景
前端每个项目里面都有自己的utils工具包,但是每个项目都不一样, 用法也不一样,一个项目更改,其他项目还不同步,比较混乱!
踩坑经验
我们前端论坛-踩坑记录里面维护了很多问题,除去 queryTable,跨声兼容等问题 就是主要几种:
- number的兼容问题(大长度数据,浮点运算)
- 时间格式处理(ios的兼容(new Date()), 不同的时间格式处理, 时间戳转换)
- lodash常用函数:(防抖,节流,pick,深拷贝之类的常用工具函数)
- 金钱和千分位数据的格式化处理
- 基本数据类型,复杂数据类型的判断
- 常用的dom节点相关的操作,事件监听
解决方案
统一封装shared共享包,总结经验,把常用的工具库,统一封装一起
- 统一封装,减少重复开发,方便多项目复用
- 单元测试覆盖,避免不同项目之间版本不同,导致bug
- 支持ESM,UMD库,支持tree-shaking,按需加载
- 文档编写,详细说明使用方法,避免踩坑
