title: js工具库 author: Gamehu tags:
最近整理产品中积累下来的工具类,因为要用新框架了要对之前的代码进行移植。当然咱是个追求完美的人,实在是团队小伙伴们一路疯狂操作下来,工具类是茫茫多啊,基本上想要维护是注定两行泪,所以咱们借着这次机会把工具类好好整理一下。
具象化要求
秉着能抄袭就不自己动手的精神,看了很多star上千的工具库,总结了一下方式方法。
一个方法一个文件
{%asset_img code.png%}
{%asset_img rollup.jpg %}
打包工具用rollup,以为是工具库所以用更简单的rollup。
jest开箱即用挺好,另外我们多用react,jest是Facebook出的,与react具有天然亲和力。
{%asset_img jest.png %}
选择了jsdoc,使用简单且较普遍。
{%asset_img jsdoc-500.jpg %}
{%asset_img dir.png %}
{%asset_img code1.png %}
进行编码后记得在index.js处暴露方法。
{%asset_img jest2.png %}
{%asset_img jest1.png %}
单元测试时,如果想打断点,记得修改上图中的配置后重新生成库。
{%asset_img dist.png %}
如下图:
3处的版本号,以及1处的CHANGELOG对本次修改进行一个简要的说明。2所示部分根据不同时期的需求可对应进行更改,从而改变打包的内容。{%asset_img package.png %}
{%asset_img use.png %}
npm i @riil-frontend/utils
import { arrayToTree,UnitFormat,Units,getNumberLength } from '@riil-frontend/utils';
加节流防止重复提交
https://juejin.im/post/6844904004850286605
如果本身已经引入了第三方得工具库,比如lodash、underscore等,先看看它们得API看是否有现成得,如果没有再自己整一个,不然重复造轮子没多大意思,更何况有可能你造的轮子有可能是扁的...
本文引用的内容,如有侵权请联系我删除,给您带来的不便我很抱歉。