SaaS管理系统开发经验-------写在前面

从Redux一路走来

从何说起呢?开发React应用总是要扯到Redux,那时公司前端还不忙,大把大把的时间用来巩固基础和提升项目架构,虽然刚踏进前端的门,终于在快一个月之后,写下了第一个使用Redux的比较贴合实战的Demo,那一刻真的很激动,感觉前端的大门被我打开了。

然而并没有高兴好久,在拿Redux写一个十分简单的项目的时候,遇到了几个数据断流,丢失的问题。十分挫败,就是那些套路,就是那些思想,为啥数据及时流不动呢?当时公司只有我一个前端,写ReactNative倒是有两老司机,他们却对Redux非常敬重而远之。 终于放弃了,很快用自己HelloWord水平的React重写了一遍。也是这个小项目让自己认识到Redux的学习成本之高,项目结构之繁杂,解决问题之无头绪,真的能淘汰一大批专业人士。

Dva一声响,挑动黄河天下反

现在已经忘却了初次遇见Dva的场景,什么地方?谁牵的线?但这并不妨碍我膜拜一下Dva的作者,话说当Redux让我绝望的时候,我也曾一遍遍地尝试把action reducer 合并,终于由于自己才疏学浅作罢,所以Dva的出现可谓是久旱逢甘霖了。说到这里,你一定十分好奇, 那么Dva的到底有什么特别之处呢?

  1. 引入命名空间的概念,将Redux的action reducer等复杂的概念进行了分包管理;
  2. 非常好地封装了Redux和Redux-Saga,API十分友好;
  3. 大大简化了Redux繁重的代码量,数据流响十分清晰; ...

我呢,最不善于表达好恶了,反正自从使用Dva之后开发效率提升一倍以上,并且再没有跳过数据流的坑。

传送门:Dva官网:dvajs.com/

Umi 只停留在初体验

由于对Dva打交道的时间越来越多,就不免很快就认识了他同胞兄弟:Umi。umi是一个可插拔式的React应用框架,

*** 特性 ***

  1. 开箱即用,内置 react、react-router 等;
  2. 类 next.js 且功能完备的路由约定,同时支持配置的路由方式
  3. 完善的插件体系,覆盖从源码到构建产物的每个生命周期
  4. 高性能,通过插件支持 PWA、以路由为单元的 code splitting 等
  5. 支持静态页面导出,适配各种环境,比如中台业务、无线业务、egg、支付宝钱包、云凤蝶等
  6. 开发启动快,支持一键开启 dll 和 hard-source-webpack-plugin 等
  7. 一键兼容到 IE9,基于 umi-plugin-polyfills
  8. 完善的 TypeScript 支持,包括 d.ts 定义和 umi test
  9. 与 dva 数据流的深入融合,支持 duck directory、model 的自动加载、code splitting 等等
传送门:Umi官网:umijs.com/

当我第一次看到这9条的时候,做了一个决定,用它!虽然那时我才入前端的坑不到两个月,也终于因为这一步迈的太大,狠狠地摔了一跤。

Ant Design Pro与SaaS天生是一对

阿里对React的贡献与推广真的很大,不仅有antdesign这样全面优秀的组件库,Dva的作者也是阿里的(当然Dva并不局限于React)而Pro可以说是阿里的React的全家桶了。因为要开发公司的SaaS管理系统,而又鉴于对构建等高阶知识点的无知,终于向Pro投诚了。

传送门:Ant Design Pro官网:pro.ant.design/index-cn

也从此开始了一段新的跳坑之路。

当然Pro2已经在Umi基础上构建了,这是后话了。今天就扯到这里吧,下一篇开始一点点记录曾经搭过的桥,趟过的河...

猜你喜欢

转载自juejin.im/post/5c0524aae51d454af013d5af