又到每月的15号了,如今avalon已经固定在每月的15号发布新版本。此次发布又带来许多新特性,让你们写码更加轻松,借助于“操做数据即操做DOM”的核心理念与双向绑定机制,如今愈来愈多人加入到avalon的阵营中来。此外,基于avalon的UI库OniUI也愈来愈强大,很快,树组件也开发完毕,下星期也与你们见面了。到时,OniUI也有两个Grid组件,一个树组件的完整UI库。与本次发布的UI还有验证组件,mask组件,百叶窗切换组件……javascript
UI库的广告就到时为止,咱们看一下新版本带来的新特性与FIX BUG状况吧。php
avalon.scanCallback = function(fn, group) { group = group || "$all" var array = scanObject[group] || (scanObject[group] = []) array.push(fn) } avalon.scan = function(elem, vmodel, group) { elem = elem || root group = group || "$all" //.....略 }
本次升级主打的是ms-duplex 2.0,你们能够到这里一窥其强大!ms-duplex2.0相对于旧的ms-duplex只能将element.value简单地同步到VM中,它添加了自动转换类型的功能(核心库),光标引导(avalon.mask),数据格式化(参看avalon.mask的第三个例子,将用户输入内容自动插入千分符),验证机制(avalon.validation)。html
第二大新特性就添加了avalon.scanCallback这新方法,容许用户在扫描后进行操做。有了这东西,什么data-include-rendered, data-repeat-rendered, data-with-rendered就没有存在的必要了。之后它们内部所有用avalon.scanCallback实现。java
从1.3.3起,我就着手开发静态收集依赖机制,以此为契机,发现许多要改良的地方,所有放到一个叫avalon.$events.js的版本上。但通过几个月的研究,发现静态收集依赖,是对压缩不友好的,像angular那样须要引入许多奇异的方式来规避这问题。所以我最终放弃这东西,之后改用其余方式提升性能。将来将着力升级三柱臣与avalon.observe.js。git
三柱臣,动画mmAnimate,数据请求mmRequest,路由器mmRouter,如今就mmRequest最成熟,而mmRouter的需求则强烈,mmAnimate极需升级。它们三个都依赖了mmPromise,那是原生的Promise的一个包装,性能超好。github
在chrome36 beta中,就已经存在element.animate这个方法,即引进了著名的web-animation。chrome39将进一步完善。新的mmAnimate也将基于它进行开发。web
迷你MVVM框架在github的仓库https://github.com/RubyLouvre/avalonchrome
avalon的新UI库地址OniUI, 多达42个UI,强大的换肤功能app
朋友们用avalon作的东西框架