我理解的模块化与组件化

先天残疾,后天畸形。

前言:一直以来,这块总是模模糊糊,搞不懂到底是什么,整理成文字,理下思路,想到哪里写到哪里。

web之初:
诞生之处应用比较简单,后端掌控一切,所以,直接后台人员写就好了。Html css js 没有模块化这个概念。导致前端先天残疾,后天畸形。

发展中
应用太大,出现专职的前端,导致代码分离。前端出现,
结构 样式 行为 的分层。

大前端时代
应用越来越大,必须分层。出现mvvm的结构。amd的模块管理方案。没有规划的页面开始混乱。

项目结构的思考:
项目由 模块 组成,模块由组件组成,有共用的有私有的。这是模块化你的业务,模块化你的代码。主要有html,css ,js 可以用 amd的方案来做。

html的思考:
缺陷:没有嵌入功能。
需求:layout(布局) partials(组件) module.html
css:
common.css module.css
用less 来管理更简单,可以有嵌入功能。可以分细一点分成一个一个功能 or页面来写。
js: 按模块来写。然后在页面中引用这些模块。这是我的思路。

关于打包:它可以减少请求。但是size也变大了。这个看情况把,首次加载不要大于1m我感觉就还好。大了的化就切割吧,要不然影响体验。我觉得按模块打包就可以。不要太大就好。css可能打包不了有冲突的,可以给模块加个前缀来区分,最后可以打包成一个。

解决的方案。是 fis + require
这个是组件的概念比较弱。他是js html的混合物,html要插进去。js可以require进来。

现今的开发方式。mvvm: 他是什么鬼呢?
和上面的差不多了。就是单页的。用js来控制页面而已。同时运行js ,切换出去,要销毁。

一个应用的结构:
从一个应用中提取东西。方便管理。相当于公用模块了。
如 一些函数可以单独拿出来。项目的配置信息可以拿出来。
config factory 只是mvvm多了一些东西 路由 和模板的过滤器 指令
好吧 就这些,不知道说啥了。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值