一个轻量级的双向绑定工具,你能够把它暂时理解为精简版的Angular。(如下简称ukujs)前端
<div uku-application> <input type="text" uku-value="myCtrl.message"> <input type="text" uku-value="myCtrl.message"> <textarea rows="4" uku-value="myCtrl.message"></textarea> </div>
//Register ViewModel var uku = new Ukulele(); uku.registerController("myCtrl",new MyController()); //Define ViewModel function MyController(){ this.hello = "hello, ukulele"; }
还记得这个风靡网络的视频么?这个小正太手里捧着的可爱乐器就叫作Ukulelegit
Ukulele是一种来自于夏威夷的4弦小吉他,念做尤克里里(台译:乌克里里)github
官网:http://momoko8443.github.io/ukulelejs_websiteweb
DEMO:http://ukujstore.tiger.mopaasapp.com/
github:https://github.com/momoko8443/ukulelejs浏览器
渲染2000个双向绑定对象,所花费的时间网络
渲染20000个双向绑定对象,所花费的时间app
Chrome
Firefox
IE 10+框架
Q: 为什么起名叫作ukulele?mvvm
A: 做者是一位ukulele乐器爱好者。Ukulele相对于Guitar而已少了2根弦(只有4根),体积也小了不少,所以ta可爱小巧,方便携带,易于学习,而且有着本身独特的音色。可是有优势也有缺点,因为少了2根弦致使ta的音域只有2个八度,在某些场合ta没法与钢琴,吉他抗衡。若是把功能健全的Angular比做钢琴的话,那ukujs就是灵动小巧的ukulele。做者也但愿ukujs也能给你们带来相同的感觉,故给这个js工具起了这个名字。若是说钢琴是一我的的交响乐队的话,那ukulele配合Cajon,口风琴,等其它轻量的乐器同样能够演奏出美丽的乐章。工具
Q: ukujs诞生记
A: 有个一块儿玩ukulele在SAP上班的兄弟,一直怂恿做者接点移动端的私活贴补家用,因为做者以前只接触过Angular,可是也知道Angular并不适用于移动端的web应用,因此他决定本身写了一套轻量的双向绑定工具来提升工做效率,因而就有了ukujs,(然而距截稿时为止,他们1笔私活都没接到,好惨)。
Q: ukujs后续的发展
A: 做者十分提倡前端组件化开发,DOM操做与mvvm并存的开发方式,目前最新版的ukujs已经支持webcomponent功能(屌!),ukujs已经趋于稳定,并已投入生产环境,请安心食用。
最后,很是感谢你能阅读彻底文,真的很是感谢。若是不吝惜时间的话,请帮忙推荐此文,或至github,star项目。