前端模块化设计思路

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

将整个网站安排频道或者分类进行拆分,比如

首页,内容页,文字列表页,图片列表页,频道1页面,频道2页面,分类1页面,分类2页面,后台管理页面,等等

3. 每个网站作为一个模块。比如

商城站,支付站,论坛,三个站独立为三个大模块。

模块化实现

1. 高度耦合提取为一个模块,将模块代码作用域进行控制

代码1.非继承模块,通过后代选择符方式控制作用域

title

con
more

.footer {} .footer ul {} .footer p {}

.mod {} .mod .title {} .mod .con {} .mod .more {}

代码2.继承模块,提取众多模块中公共部分,具体模块通过优先级进行处理。继承模块方面整站某些模块

的批量修改处理,也提高复用性,降低代码重复。

.mod {} .mod .title {} .mod .con {} .mod .more {} .note {}

.note .title {} .note .con {} .note .more {}

title

con

more

2. 页面模块

页面模块代码作用域的控制通过css文件来控制。某类具有高度耦合的页面使用自身的css文件。

3. 模块间的公开接口

上面是模块的封装,公开的接口在页面中表现为什么?

首先是reset,base,可继承模块,这些代码是开放接口,必须根据这些代码进行页面代码开发,也就是你的页面代码必须在以上代码基础上开发。

其次是css文件,css文件名称和他作用于那些页面。

再次是布局、模块class,id命名,模块在页面的哪个位置。在CSS中的表现就是定位,布局,和部分盒模型。float、position、 width、height等等。布局通常使用css作为接口实现,如果布局具有高度的逻辑性,完全可以通过html和css组合进行,比如960 Grid System,或者采用YUI grid.css。模块class和id的命名用于区分模块,不能在一个页面的所有css中出现不同模块同用一个class和id名。

规划整站模块

上文提到的基本的原理,真正实施起来还是存在很多问题,模块粒度问题,公共模块与普通模块的

区分,继承模块是否值得继承等等,页面模块如何划分。

首先,了解你的项目,通过画网站树状图了解你网站的总体结构和页面模块

其次,理清结构逻辑和视觉逻辑,结构逻辑就是看你的页面由那些模块组成,视觉逻辑了解可继承模块,布局逻辑(网格布局或者非网格布局)

附图:

相关文档
最新文档