最开始接触组件化的思想是经过写react。随着作的项目愈来愈多,组件化的思想显得愈来愈重要。react
关于如今项目的分层,我在以前的博客中有介绍过。组件化
在正常的业务场景下,咱们会对项目作这样的分层。component
- 基础组件
- 所谓基础组件,咱们也能够把它理解成widget,也就是元件。好比Input,Button,AutoComplete等等。它们能够被用在任何地方。
- 业务组件
- 我理解的业务组件也就是component,这些组件由基础组件构成,根据不一样的业务场景须要,造成了带有数据,带有逻辑的业务组件。固然这些业务组件一样能够被抽象成一个可以被多个模块组件使用的组件,好比页面底部fix的footer,它可能集成了首页模块,用户信息模块,产品列表模块的跳转信息等,因此每一个模块都须要拥有它。
- 模块组件
- 这是咱们根据具体的业务需求具体出的一个一个的模块,好比登陆,商品详情页等等。它是业务组件与基础组件的集成。
因此回到最原始的问题,咱们为何要作组件化,经过上面的这种拆分,咱们不难看出,组件化可让咱们的代码低耦合,咱们不用像传统开发同样把全部的东西都揉在一块儿,从而极大的提升了咱们的开发效率。同时咱们避免了重复造轮子,提升了咱们的代码质量,下降了维护的成本。开发