Dva
作者: dkvirus 发表于: 2019-03-26 14:41:56 最近更新: 2019-03-26 16:44:58

dva 是由阿里架构师 sorrycc 带领 team 完成的一套前端框架,在作者的 github 里是这么描述它的:”dva 是 react 和 redux 的最佳实践”。
我总结 dva 功能很单一,就是处理 React 组件之间的通讯问题。

一、先吐槽

学习的过程并非一帆风顺,遇到的一些问题对于非科班出身的我来说简直不可思议。

  • 教程字典化
    • 现在的网络很发达,看似学习资料沧海星空,实则大多是一篇篇的字典,很难寻找到一篇用心编写的好教程。
    • 什么是字典化:复制的 API 文档。就像新华字典一样,我承认里面拥有所有的汉字,但是不知道查字典的方法抱着一本字典又有什么用呢?一个汉字一个汉字的去记忆会打击学习的兴趣。
    • 我理解的好教程 。花费80%的时间去跟你讲清楚这究竟是个什么东西——这就像查阅字典的方法。API 仅仅是“帮助文档”而已。
  • 学会 dva 和学会在项目中使用 dva 是两码事
    • 学会使用 dva 开发一个增删改查的模块是很快的,我花费了三天。
    • 写完代码还需要提交,这就接触了此前没有使用过的 git 分布式版本控制工具。
    • 老板告诉我,你写的代码不能直接提交,要经过 ESLint 工具做代码审查之后才能放心的提交到版本库。
    • 提交到版本库只是开发环境时做的事情,考虑到将来上线还需要学习诸如 webpack 构建工具来进行项目打包。
    • ………….
    • 项目中的 dva 远不止用到这些工具,还需要其它的一系列技术点才能组成一套完整的体系。

而我现在要做的事,就是将过程遇到的所有技术编写成一篇篇的好教程,便于需要它的人不会遇到我先前遇到的窘境。

二、为什么写这篇 Blog

起初,是由于项目的需要,开始正式接触 dva。

dva 的开发模式不同于传统页面的开发,学习起来有一定的技术门槛。

dva 的作者sorrycc Blog 里逗留了数个日夜,对新的开发模式好像是理解了,于是就迫不及待的下载了一个 demo,准备开发 CRUD。

故事情节的发展往往不会这么顺利,开发过程中发现,学会 dva 和在项目中使用 dva 进行完整开发完全是两码事:因为项目不仅仅是代码开发,还要关注项目的整体生命周期,代码规范,打包上线等等。

初学 dva 时心里变化

如果你和我一样,不能容忍在你的项目存在看不懂的东东,哪怕是一个配置文件,存在必有价值,不明白的东东就该 DELETE 掉,那么来到这里就对了,本文就是对 dva 做一次“大手术”,肢解它的技术组成,掌握项目中的 dva。

三、项目中的 dva

项目中的 dva

四、目录

五、推荐相关开源项目

5.1 Ant Design Pro(推荐 x 5)

阿里自己整的一套开箱即用的中台前端/设计解决方案 Ant Design Pro github。初学者以这个入手,可以省很多事:框架搭建、布局、权限等等。点我在线预览效果官方文档

5.2 umi(中文名:五米,推荐 x 5)

同样是 dva 作者 sorrycc 最近整的新玩意,2018.2.26 发布的 1.0 版本。sorrycc 认为之前 dva 固然好,但还要用户自己引入 UI 工具 antd,打包工具 roadhog,路由 react-router,状态管理器 dva,这些很麻烦!前端发展越来越快,为什么不揉到一体呢!!

5.3 antv(图表库,推荐 x 5)

与 Antd 风格相同,阿里自己研发的图表库。值得关注。

友链
首页
me
动态
RSS