本文将深入介绍一下avalon的运作机理及与jQuery的区别。 许多人都知道MVVM是MVC的一个变体,但那些MVC是在后端的,包括微软的WPF,这意味着这个V与我们前端接触到的V差别很大。后端的V就是使用各种模板拼凑成一个静态页面给前端。而前端的V在JSer的眼中就是一个巨大的DOM树 ...
很多时候,写代码就像砌砖头,只要我们不关心盖楼的原因 建筑的原理 土木工程基础和工程经验,就算我们砌了 栋高楼,我们也就只是一个砌砖工人,永远也成为不了一个工程师,更别说建筑师了。而那些包工头也只会把我们当成劳动力罢了。 左耳朵耗子 avalon在兼容旧式IE上做了大量工作,从而让它更接地气,完美地运行于国内的各种奇葩浏览器中。 首先是Object.defineProperties的模拟,正因为 ...
2014-03-13 11:40 6 4831 推荐指数:
本文将深入介绍一下avalon的运作机理及与jQuery的区别。 许多人都知道MVVM是MVC的一个变体,但那些MVC是在后端的,包括微软的WPF,这意味着这个V与我们前端接触到的V差别很大。后端的V就是使用各种模板拼凑成一个静态页面给前端。而前端的V在JSer的眼中就是一个巨大的DOM树 ...
最近有许多人问我怎么用这东西,如果是那些用过knockout的人还好,之前没有接触过MVVM的人可能一头雾水。大多数人被我那个jquery ui的演示吸引过来,都深感它的威力之大。 这里详细介绍一下它的用法吧。 第一步,当然是引入avalon库,就像引入jQuery库那样,当然要从官网下。现在 ...
avalon之所以能在页面处理1W个绑定(angular对应的数字是2000),出于两个重要设计——基于事件驱动的双向绑定链及智能CG回收机制。 avalon的双向绑定链是通过Object.defineProperties及VBScript,将要操作VM属性变成一种访问器属性。访问器属性是一种 ...
avalon最早发布于2012.09.15,当时还只是mass Framework的一个模块,当时为了解决视图与JS代码的分耦,参考knockout开发出来。 它的依赖收集机制,视图扫描,绑定的命名data-*都与knockout差不多。它总共900行。 当时的理论体现在我在注释的这一段 ...
avalon是国内最强大的MVVM框架,没有之一,虽然淘宝KISSY团队也搞了两个MVVM框架,但都无疾而终。其他的MVVM框架都没几个。也只有外国人与像我这样闲的架构师才有时间钻研这东西。我很早之前就预言,MVVM是前端的终极解决方案。我之前在盛大无线做盛大通行证就深有体会,一个业务逻辑对应 ...
avalon已经从mass Framework抽取出来,没有任何依赖。 主要优点如下 使用简单,在HTML中添加绑定,在JS中用avalon.define定义ViewModel,再调用avalon.scan方法,它就能动了! 兼容到IE6 没有任何依赖,只有77K,压缩后22K ...
本章节,主要是介绍avalon.config方法,通过它来制定一些更贴心的功能。 一般情况下,我们在使用ms-controller绑定时,需要添加一个ms-controller类名,目的是为了防止网速慢时将花括号暴露出来。 <!DOCTYPE html> <html> ...
avalon是一个迷你高效易用的MVVM框架,遵循“操作数据即操作DOM”的理念,让你在代码里基本见不到一点DOM操作代码。DOM操作全部在绑定后,交给框架处理。相当后端有了ORM一样,不用你手写SQL,提高生产力! 此版本只要是小补小修。只要改进有 IE透明滤镜强制使用zoom ...