怎么写好组件

542 查看

我们为什么要写组件呢?这里不细分组件、插件、控件,追究其原因无非让代码,能够复用,追求更快的开发效率。其实还有个重要的原因,项目大了之后,难以维护。这个时候就会把项目中重复的部分抽取出来,形成一个组件。但是组件也会有些’缺点’,这个最后讲。

组件需求

要实现如图的一个条件选择器

blog_compant

有的时候,项目时间紧张,就会直接切图,通过jquery的dom选择器实现这个’简单的功能’。

需求分析

为了更好的维护,以及更好的复用此组件,就要做些抽象。

  • 数据层:用来决定按钮个数以及按钮是否选择
  • 表现层:按钮使用现有的ui组件
  • 逻辑层:按钮事件等逻辑处理

数据层

数据层主要对原始数据做些CURD的一些操作,具体的操作看具体的业务需求,但是要具有这个意识。

表现层

说白了表现层也就是template层或者view层,就是用户所看到的,一般会用一个比较成熟的ui库,比如bootstrap。

众所周知,template就是根据数据渲染成html,在spa项目尤其重要。

2304932112-578c3928ccd21_articlex

逻辑层

这层主要做 调用template方法将数据渲染到页面上;将页面上的一些事件结果,映射到数据层。其实现在流行的MVVM模式,就是在逻辑层这里做了更多的事情,只是开发者们不用去关心细节处理,更专注业务的开发。