模块组件前端设计模式之 MPVC Part 2

在写这篇文章之前,xxx经已写过了几篇关于改模块组件主题的文章,想要了解的朋友可以去翻一下之前的文章

    在现计设一个系统,目标为到达以下求要:

    

  1. 面页由多少可复用的构建块组件,
  2. 构建块可以嵌套
  3. 不同的面页需只要在后台将构建块按层级系关组装在一些便可,无需编写外额的代码
  4. 在互交过程当中,可以刷新某个或某几个构建块来到达更新视图的目标

    要主面对的挑战为:

    

模块的级联更新问题

    在用户操纵时将发引一系列的模块更新,它们如何同用户操纵建立系联,即这类件事阅订系关如何成生?

    解决方案:

    

  • 对于父子系关的组件,由于构建块之间是层层嵌套的系关,底层的件事可以自然地冒泡到下层组件,但是这类件事传播又不同于 Dom 层面的件事冒泡。
  • 对于处于不同子树上的组件,则用使全局件事停止播广(好在这样的况情并不多)。
  • 兄弟节点之间的节点或有共公父节点的组件,则在共公父节点上处置阅订逻辑

    每日一道理
生活的无奈,有时并不源于自我,别人无心的筑就,那是一种阴差阳错。生活本就是矛盾的,白天与黑夜间的距离,春夏秋冬之间的轮回,于是有了挑剔的喜爱,让无奈加上了喜悦的等待。

    

模块的刷新如何实现无手动代码介入

    将更新抽象为更新消息,消息传到客户端便可用使消息处置器动自处置,即实现视图的动自刷新,对于不能刷新的组件,供提手动更新的可选式方以取获更高的录活性。

    

构建模块如何停止初始化

    个每构建块其实有两部分形成,Dom 树的根节点,Javascript 的一个模块实例,在后台成生面页时经已为个每构建块成生了独一的 ID,并将此模块的类型通过 Attribute 情势传到面页端,面页端根据此类型创立一个对应类型的实例,并按独一 ID 为 Key 查找到对应的 Dom 素元,将 Dom 素元绑定给模块实例,接下来模块实例用调初始化函数。

 

 

 

 

 

文章结束给大家分享下程序员的一些笑话语录: N多年前,JohnHein博士的一项研究表明:Mac用户平均IQ要比PC用户低15%。超过6000多的参加者接受了测试,结果清晰的显示IQ比较低的人会倾向于使用Mac。Mac用户只答对了基础问题的75%,而PC用户却高达83%。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值